Когда явно указываешь типы и операции над типами, и они вычисляются в рантайме. Вроде метапрограммирования C++, но аналоги std::conditional и другие type_traits выполняются в рантайме и шаблонные аргументы становятся обычными рантайм аргументами.
Только статический контракт может дать какие-то гарантии во время сборки.
А любой динамический контракт требует высокой нагрузки на тестирование. И уж тем более нельзя в проде позволять выполнять непротестированный код
В JSON нет ссылок, и там ключи дублируются. У меня определяешь структуру, а дальше идут данные. В бинаре данные будут идти компактно без каких-либо метаданных.
Видел, ещё когда исследовал, что бывает. Полезная штука в том плане, что позволяет расковырять и прочитать сторонний формат. Но это громоздкий YAML и сам по себе не компилируется в бинарь вместе с данными. А у меня будет именно умный файл со всей информацией о том, что он хранит внутри, либо ссылкой на эту информацию извне.
Только статический контракт может дать какие-то гарантии во время сборки.
А любой динамический контракт требует высокой нагрузки на тестирование. И уж тем более нельзя в проде позволять выполнять непротестированный код
Мой язык по сути ТЗ для того, кто разрабатывает бинарный протокол, в данном случае - моя будущая реализация делает это сама автоматически. Реализацию нужно тестировать. А вот для ТЗ никто тестов не пишет.
Мой язык по сути ТЗ для того, кто разрабатывает бинарный протокол, в данном случае - моя будущая реализация делает это сама автоматически. Реализацию нужно тестировать. А вот для ТЗ никто тестов не пишет.