Архитектура Каллисто
Архитектура Каллисто впервые объединила два языка программирования, развивавшихся независимо друг от друга — входной язык советских ПМК и язык Форт, в первую очередь советские реализации Форта (Форт-ЕС и Форт ИТЭФ).
Алгоритмы
Сердце Каллисто составляют два интерпретатора:
- Текстовый (внешний) интерпретатор понимает входной язык и работает в двух режимах (с пульта и из блока). Также текстовый интерпретатор может находиться в двух состояниях: (исполнения и компиляции).
- Адресный (внутренний) интерпретатор выполняет шитый код, созданный в результате компиляции программ, написанных на Каллисто или являющийся частью транслятора.
Словарный запас
Каллистянские слова можно разделить на несколько мало пересекающихся групп:
- Общие — слова, имя и назначение которых практически одинаковы в Каллисто, советских ПМК и Форте. Примеры: + − MAX
- Традиционные — слова, взятые из входного языка советских ПМК и ЭКВМ с минимальными изменениями. Примеры: × ÷ /−/ ↔ $\pi$ НОП ln lg sin cos tg arcsin arccos arctg ИПРГ
- Усовершенствованные — слова, совершенствующие входной язык советских ПМК. Примеры: ↑ Yˣ
- Фортовские — слова, имя и значение которых взяты из Форта или colorForth практически без изменений. Примеры: 1+ 1− DROP MIN TYPE ACCEPT ALLOT AT FOR I J K NEXT IF ELSE THEN
- Адаптированные — слова Форта или colorForth, адаптированные к архитектуре Каллисто или МК-161. Примеры: / 2/ . ↖
- Родные — слова, имя или значение которых уникальны для Каллисто. Примеры: TYPE1 ДALLOT DARK LIGHT
- Системные — слова для доступа к низкоуровневым возможностям системы «Электроники МК». Примеры: ИП П КАТ _RW
- Дополнительные — слова, отсутствующие в ядре Каллисто, определения которых предлагается включать в программы самостоятельно. См. Палитра Каллисто
Структуры данных
Основу структур данных Каллисто составляют два стека…
- Стек данных (десятичный)
- Стек возвратов (двоичный)
…и два словаря:
- Двоичный словарь (классический для Форта)
- Десятичный словарь (уникальный для Каллисто)
Это заготовка статьи. Вы можете помочь проекту, дополнив её. |