BlackBox- генератор исходного кода (JAVA, C#, C) + Rust обработки бинарного протокола Вашего распределенного приложения

Всех приветствую!

Не буду долго расписывать о своем проекте BlackBox, достаточно много уже написано.
Собственно проект развивается, уже появились и работают вложенные типы… собрался писать версию под С++ и на половину уже написал, но…
Случайно углубился в Rust и понял. Похоже версию на С++ можно уже НЕ писать. поскольку это, более Не актуально.

В процессе низкоуровневого программирования регулярно задумывался относительно проблем с которыми так успешно справляется Rust.

И поскольку одновременно активно использую другие высокоуровневые языки, собственно кодогенератор BlackBox написан на SCALA, мое вхождение в Rust пока проходит легко и непринужденно.

Уже начал первые наброски кода.
Скорее всего сначала все будет “кальками” с С / С# версий, но с Вашей помощью надеюсь это быстро устранить.

Сразу отвечу на некоторые очевидные вопросы.

Q: Это что переизобретение SerDe?
A: Нет. Это два совершенно разных идеологических подхода. В чем отличие предлагаю выяснять самостоятельно. Я готов отвечать на вопросы, но пересказывать написанное… зачем?

Q: Бинарный протокол BlackBox это какой то стандарт? Что то типа Ethernet?
A: Нет. Протокол действительно бинарный и высокооптимизированный, Но каждый раз пересоздается под конкретный проект. Метаинформация о протоколе хранится у участников обмена. Без неё разобрать протокол не реально.

4 лайка