Некоторое время экспериментирую с динамическим гомоиконным языком программирования на основе фреймов (так же как Лисп сделан на базе списков).
Начал книжку делать по реализации, чтобы как-то зафиксировать. Будет ли кому интересно здесь пообсуждать?
Интро еще толком не прописал, поэтому вкратце:
интересует применение экспертных систем для генерации программ для встраиваемых систем и IoT,
погуглил на тему представления знаний в таких системах, попалась книжка Марвина Минского (в переводе)
и пара ссылок с кратким описанием принципа, подкупает полная поддержка ООП и объектного представления + логический вывод
прототип решил делать поверх Python (чтобы не возиться с управлением памятью, и использовать несколько удобных библиотек),
командный язык а-ля Форт (стек и постфикс) для простоты,
как основной инструмент хочется унификацию (как в Прологе) но более дружественную к императивному программированию,
и самое главное гомоиконичность
(а) чтобы система могла достраивать сама себя (bootstrap) и
(б) полностью динамическая интерактивная система а-ля Smalltalk/Self позволяющая в себя залезть/отладить/модифицировать в рантайме
основное прикладное применение: генерация кода для микроконтроллеров по шаблонам
(параметрические куски кода на embedded Си, которые немного изменяются в зависимости от целевой системы и контекста в котором использу.тся)
наследование дизайна прошивки: есть код прошивки для базового прибора, и полсотни заказчиков, каждый хочет свои лыжи и гамак, С++ под корпоративным запретом (и в 2-8К ОЗУ не разбежишься), в итоге исходники неконтролиремо копипастятся и имеют море наслоений legacy