Структуры для Каллисто-2

| рубрика «Заметки» | автор AtH
Метки:

Большие перерывы между периодами практики дают мне время продумывать стратегию разработки Каллисто. Хотя сейчас акцент идёт на оптимизацию по скорости, параллельно в язык вносится ряд улучшений — большей частью из Форта.

Изучая ситуацию с Фортом, я наткнулся на такое сокровище — реализацию структур в gforth (англ.).

Сам поиск был интересным и могу рассказать, если кому любопытно послушать или почитать. Для экономии вашего времени, выложу здесь результат.

gforth — версия языка Форт, которую с 1992 продвигает австрийский net.personality Anton Ertl. gforth — свободный компилятор под той же GNU GPL v3, что использует Каллисто. Более того, gforth является частью проекта Гну, а сам Антон Эртл активно участвует в международном комитете по стандартизации Форта, упомянут в Руководстве по Каллисто Классик (стр. 6).

Мне понравилось, что структуры gforth лаконичны и поддерживают иерархию (расширение) типов — научный подход из Оберона к тому, что зарубежная индустрия называет «наследование в ООП». Подобный подход поможет, со временем, разработать необходимые структуры данных и реализовать в Каллисто СКМ. Здесь, конечно, очень не хватает проф. Дьяконова (1940–2015), кто разбирался в Форте, любил ПМК и профессионально занимался разработкой СКМ. Это один из недостатков постепенного пути. Пока русский аппаратный и программный инструментарии неторопливо совершенствуются и пробиваются сквозь тернии, ключевые люди, важные для продолжения проекта, уходят из жизни.

Конечно, помимо иерархии типов нужно продумать модульность («инкапсуляцию» на птичьем языке ООП, она же «библиотеки» и «юниты» из менее фундаментальных подходов к программированию). Но это уже другая история.

P.S. Реализация структур в СПФ сведена к одному слову -- FIELD (расширение записей поддерживается).