Вроде кризис пока больше моральный, и вроде его удалось преодолеть. По форматам пока решено так:
- расширение .cp - для хранения исходных текстов в формате utf-8.
- расширение .tdc - для хранения любых документов в тексте, по содержимому равном .odc
Формат .odc отключим, как только перегоним всю текущую сборку в .tdc. После этого формат tdc будет развиваться,
и мы будем хранить линейку конвертеров между odc и любой версией tdc. Наверное, нужно будет даже их для начала называть .tdc0001, тдц0002 и т.п.
REPL делать будем так. Сейчас есть три формата команд: простая команда без кавычек, команда с аргументами в кавычках, команда со своим парсером (ха, Вирт придумал symbol-readmacro, до которых лисп-сообщество так и не доросло, хотя я их тоже придумал, применял и пытался пропагандировать). Заведём две префиксные буквы для этих случаев. Добавим возможность выполнять модуль, как тут:
https://forum.oberoncore.ru/viewtopic.p ... is#p101137
Для начала этого более чем достаточно, т.к. возможность вводить модули делает REPL полноценным (не хуже, чем в JS с его встраиванием скриптов в html документы).
Документацию к функциям компилятора будем писать так: сделаем форк компилятора - никто не мешает иметь более одного компилятора в ББЦБ. Далее по-русски прямо в исходном тексте. Технология Docu слишком тяжеловесна. Плюс руководство / глоссарий / навигатор в формате html (придётся придумать, как его загружать в документ, чтобы удобно ходить по ссылкам). Функции и константы будем переименовывать в более говорящие. Этим нужно будет заняться сразу после перевода исходников в текстовый вид.
Процесс сборки вроде тоже наклёвывается. Всё, дальше некогда.