Редактирование: Каллисто

Перейти к навигации Перейти к поиску
Внимание: Вы не вошли в систему. Ваш IP-адрес будет общедоступен, если вы запишете какие-либо изменения. Если вы войдёте или создадите учётную запись, её имя будет использоваться вместо IP-адреса, наряду с другими преимуществами.

Правка может быть отменена. Пожалуйста, просмотрите сравнение версий ниже, чтобы убедиться, что это нужная вам правка, и запишите страницу ниже, чтобы отменить правку.

Текущая версия Ваш текст
Строка 1: Строка 1:
[[Файл:Callisto-161.JPG|thumb|right|360px|''Каллисто'', запущенная на «Электронике МК-161» с накладной клавиатурой.]]
'''Каллисто''' — компактный диалект языка Форт с элементами colorFORTH, написанный для [[МК-161]] на [[РЯМК]] и предназначенный для программирования «на борту». Пока существует в альфа-версии, но уже позволяет определять новые слова, редактировать и компилировать экраны, успешно переносить на МК-161 старые программы, написанные на языке Форт. Актуальная версия — 0.3.5a.


'''Каллисто''' — хэкерское<ref>Не имеющее отношение к [[НПП «СЕМИКО»|производителю]] [[Электроника МК-161|«Электроники МК-161»]]. Русское слово хэкер происходит от английского слова [https://en.wikipedia.org/wiki/Hacker_(expert) hacker], но исключает паразитное значение «компьютерный преступник».</ref> расширение входного языка [[Электроника МК-161|«Электроники МК-161»]], предназначенное для разработки приложений «на борту» (без использования компьютера). '''Простые вычисления для [[«Электроники МК-61»]] и [[«Электроники МК-161»]] можно набивать и выполнять в строке ''Каллисто'' без изменений''', только добавьте пробел и [[Слово .|точку]] в конце для вывода результата.
Вместо фортовского цикла LOOP Каллисто использует более простой и быстрый цикл [[FOR]] из colorFORTH, а «бесконечный» стек содержит 12-разрядные десятичные числа ЭКВМ с плавающей запятой. Помимо обычной (для Форта) целочисленной операций деления, Каллисто использует традиционное для ПМК деление с плавающей запятой. Сохранены традиционные для ПМК обозначения операций умножения, подъёма стека, а также русскоязычные операции ПМК — [[ЗН]] , [[СЧ]] и т.д.


Среда ''Каллисто'' написана для [[Электроника МК-161|«Электроники МК-161»]] на [[РЯМК|расширенном языке МК]] и является компактным диалектом Форта с элементами {{colorForth}}. Распространяется под свободной лицензией с авторским левом ([https://ru.wikipedia.org/wiki/%D0%9A%D0%BE%D0%BF%D0%B8%D0%BB%D0%B5%D1%84%D1%82 copyleft]), за другой формой лицензирования обращайтесь к правообладателю.
В отличии от ранних диалектов Форт экран Каллисто содержит 48 строк и занимает 3 Кб. Из-за того, что строка экрана занимает традиционные 64 символа, использование встроенного в ЭКВМ редактора является затруднительным. Программистам Каллисто предлагает строковый редактор, а также возможность написать собственный редактор экранов. Каллисто использует накладную алфавитно-цифровую клавиатуру для быстрого посимвольного ввода команд и данных.


Транслятор ''Каллисто Классик'' (версия 1.0) выпущен 7 ноября 2017 года.
Вводимые слова компилируются в словарь, находящийся в области двоичных данных. В этой же области располагается стек возвратов. Стек данных располагается в области десятичных регистров. Там же располагается «десятичный словарь», где хранятся десятичные переменные типа [[VALUE]]


Подробное описание слов ''Каллисто'' с использованием [[Стековая нотация|стековой нотации]] см. в статье [[Слова Каллисто по категориям]]. Также см. статью [[Архитектура Каллисто]] и официальное Руководство по эксплуатации ([http://the-hacker.ru/2017/Callisto.pdf pdf], 40 стр.).


== Краткая история Форта (1958-2016) ==
== Словарь Каллисто ==
Интересно, что разработка Форта началась в 1958 году, когда [https://ru.wikipedia.org/wiki/%D0%A1%D0%BC%D0%B8%D1%82%D1%81%D0%BE%D0%BD%D0%BE%D0%B2%D1%81%D0%BA%D0%B0%D1%8F_%D0%B0%D1%81%D1%82%D1%80%D0%BE%D1%84%D0%B8%D0%B7%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B0%D1%8F_%D0%BE%D0%B1%D1%81%D0%B5%D1%80%D0%B2%D0%B0%D1%82%D0%BE%D1%80%D0%B8%D1%8F Смитсоновская астрофизическая обсерватория] наняла [https://ru.wikipedia.org/wiki/%D0%9C%D1%83%D1%80,_%D0%A7%D0%B0%D1%80%D0%BB%D1%8C%D0%B7_%28%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%81%D1%82%29 Чака Мура], студента [https://ru.wikipedia.org/wiki/%D0%9C%D0%B0%D1%81%D1%81%D0%B0%D1%87%D1%83%D1%81%D0%B5%D1%82%D1%81%D0%BA%D0%B8%D0%B9_%D1%82%D0%B5%D1%85%D0%BD%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B9_%D0%B8%D0%BD%D1%81%D1%82%D0%B8%D1%82%D1%83%D1%82 МТИ], для расчёта на [https://ru.wikipedia.org/wiki/IBM_704 IBM EDPM 704] орбиты и оптического отслеживания советского [https://ru.wikipedia.org/wiki/%D0%A1%D0%BF%D1%83%D1%82%D0%BD%D0%B8%D0%BA-1 Спутника], запущенного 4 октября 1957 года абсолютно неожиданно для США.<ref>[http://www.colorforth.com/HOPL.html «Forth - The Early Years» Chuck Moore, 1991] ''(англ.)''</ref>
* [[COLD]]
 
* [[WARM]]
Имя FORTH язык обрёл в 1968 году, когда интерпретатор заработал на миникомпьютере IBM 1130 с графическим дисплеем IBM 2250 (16-битный процессор с ОЗУ 8К, дисководом, клавиатурой, принтером и ридером/панчером перфокарт). Говорят, что язык должен был называться FOURTH («четвёртое» поколение языков программирования), но ограничения операционной системы позволили дать файлу только пятибуквенное имя. Тогда Чак Мур работал в Mohasco Industries, Inc ([https://en.wikipedia.org/wiki/Amsterdam_%28city%29,_New_York Amsterdam NY], ''англ.'').
* [[BYE]]
 
* [[VERSION]]
Уже в 1976 году Форт был принят [https://ru.wikipedia.org/wiki/%D0%9C%D0%B5%D0%B6%D0%B4%D1%83%D0%BD%D0%B0%D1%80%D0%BE%D0%B4%D0%BD%D1%8B%D0%B9_%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%BD%D0%BE%D0%BC%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B9_%D1%81%D0%BE%D1%8E%D0%B7 Международным Астрономическим Союзом], как стандартный язык. Первые влиятельные стандарты Форта появились в 1979 и 1983 годах. В 1980-90'ых годах Форт начал широко распространяться в СССР — чуть позже [[ПМК]] и независимо от них.
* [[EXECUTE]]
 
* [[?BREAK]]
Тогда же появились первые советские реализации Форта, из которых на ''Каллисто'' сильнее всего повлияли ФОРТ-ЕС (Ленинград, 1986) и FORTH ИТЭФ (Москва, 1988), чьи исходные тексты были опубликованы в СССР их авторами. Эти «исходники» выложены на вики в качестве исторических примеров отечественной реализации слов ''Каллисто''.
* [[(LITERAL)]]
 
* [[TYPE (Каллисто)|TYPE]]
Последние 20 лет общепризнанным в России и зарубежом является международный стандарт Форта ([http://www.iso.org/iso/ru/home/store/catalogue_tc/catalogue_detail.htm?csnumber=26479 ISO/IEC 15145:1997]), созданный на основе американского стандарта [http://forth.sourceforge.net/standard/dpans/dpans.htm ANS Forth] 1994 года. Ему на смену неторопливо готовится [http://www.forth200x.org/forth200x.html новый стандарт Форта] (условно называемый Форт-2012), черновики которого были учтены при разработке ''Каллисто'' наряду с критикой стандарта ANS. Например, с помощью [[Префиксы чисел|стандартных префиксов Форта]] для каждого числа можно индивидуально задавать систему счисления.
* [[TYPE1]]
 
* [[?BRANCH]]
Продолжателем Форта, повлиявшим на ''Каллисто'', является и язык {{colorForth}}, развиваемый Чаком Муром в одиночку. Несмотря на явное влияние зарубежных стандартов языка Форт, при разработке ''Каллисто'' приоритет отдавался совместимости с отечественными [[ПМК]], а также удобству и скорости работы на [[Электроника МК-161|«Электронике МК-161»]] — вообще говоря, не предназначенной [[НПП «СЕМИКО»|разработчиками из Новосибирска]] для алгоритмических языков высокого уровня.
* [[BRANCH]]
 
* [[(FOR)]]
== Основные отличия ''Каллисто'' от Форта ==
* [[(NEXT)]]
Вместо фортовского цикла DO…LOOP ''Каллисто'' использует более простой и быстрый цикл [[FOR]][[NEXT]] из {{colorForth}}, а [[стек данных]] содержит привычные 12-разрядные [[десятичные числа]] ЭКВМ. Для отделения дробной части числа от целой служит десятичная запятая, как в ПМК и ЭКВМ.
* [[(FIND)]]
 
* [[DIGIT]]
[[Файл:CallistoMag.png|left||264px|]]Помимо стандартных для Форта операций деления с остатком, ''Каллисто'' использует [[÷|традиционное для ПМК]] [[Слово ÷|деление с десятичной плавающей запятой]]. Сохранены традиционные для ПМК обозначения операций [[Слово ×|умножения]], [[Слово ↑|подъёма стека]], [[Слово ↔|обмена двух чисел на вершине стека]], математических функций, а также русскоязычные операции ПМК — [[ЗН]] , [[СЧ]] и т.д.
* [[РЕГ!]]
 
* [[РЕГ@]]
Предусмотрены слова [[Слово ИП|ИП]] и [[Слово П|П]] для обращения к [[Регистры функций МК|функциональным]] и другим [[Регистр памяти данных|регистрам ЭКВМ]] по их привычным номерам. В названиях слов ''Каллисто'' русские буквы можно использовать наряду с английскими, причём заглавные и строчные буквы считаются одинаковыми.
* [[0=]]
 
* [[0-больше (Каллисто)|0&gt;]]
В Каллисто 1.0 используется [[единое адресное пространство|единая адресация]], объединяющая разрозненные адресные пространства ЭКВМ. При этом размер ''адресуемой единицы'' памяти зависит от адреса и может колебаться от 1 байта до восьми (12-разрядные [[десятичные числа]]). Беззнаковые 16-битные целые считываются в [[Стек данных|стек]] из двух последовательных регистров памяти с помощью слова [[U@]]. Как принято в ЭКВМ, старший байт идёт по младшему адресу. Первые 10000 адресов памяти представляют из себя [[память программ]], в которой находится исполняемый код ''Каллисто'' на [[ЯМК|входном языке МК-161]]. По каждому из этих 10 тысячи адресов содержится 1 байт, доступный только для чтения.
* [[0-меньше (Каллисто)|0&lt;]]
 
* [[= (Каллисто)|=]]
Из-за невозможности исполнять [[Система команд ЭКВМ|код МК-161]] из [[Память двоичных данных|области данных]] при написании порождающих слов вместо современной конструкции CREATE…DOES> используется устаревший, но не менее мощный механизм [[⟨BUILDS|&lt;BUILDS]] [[DOES⟩|DOES&gt;]]
* [[меньше (Каллисто)|&lt;]]
 
* [[больше (Каллисто)|&gt;]]
После нажатия [[Клавиша Ввод|клавиши {{Синяя клавиша|Ввод}}]] введённые слова либо исполняются сразу, либо компилируются в [[словарь]], находящийся в [[Память двоичных данных|области двоичных данных]] ([[Единое адресное пространство|адреса]] 11000…15095). В этой же области располагается [[Стек возвратов Каллисто|стек возвратов]] — растущий «вниз», навстречу [[Словарь|словарю]]. [[Стек данных|«Бесконечный» стек данных]] располагается в области [[Регистр десятичных данных|десятичных регистров]] ([[Единое адресное пространство|адреса]] 10000…10999). Навстречу [[Стек данных|десятичному стеку]] растёт [[десятичный словарь]], где хранятся значения десятичных литералов и удобных переменных типа [[VALUE]].
* [[ENCL]]
 
* [[EMI]]
Из-за ограничений платформы [[буфер]] в ''Каллисто'' только один ([[Единое адресное пространство|адреса]] 15096…18167), а размер загружаемого в него [[блок]]а составляет 3 Кбайта.
* [[EMIT]]
 
* [[C.]]
== Приложения и их распространение ==
* [[↵ (Каллисто)|↵]]
Разработанные пользователем программы на ''Каллисто'' называются ''приложениями'' и могут распространяться со средой ''Каллисто'' в форме ''пакета'' — набора файлов для «Электроники МК-161», объединённых общим именем. Приложения могут запускаться сразу же после запуска ''Каллисто'' (см. слово [[APP]]) и возвращаться в [[Режим автоматической работы|автоматический режим]] после своего выполнения (см. слово [[BYE]]).
* [[BELL]]
 
* [[BEEP]]
Продвинутые разработчики могут использовать в своих приложениях программы для «Электроники МК-161» (расположенные в [[Память программ|памяти программ]]), изменяя исходный текст среды ''Каллисто''.
* [[(PLAY)]]
 
* [[PLOT]]
=== Исходный текст ===
* [[DRAW]]
Помимо ввода с клавиатуры, исходный текст приложений может располагаться на внутреннем диске МК-161 в виде [[экран]]а — в пронумерованном [[блок]]е (файле текста), откуда этот исходный текст загружается командой [[LOAD]]
* [[ГРФ]]
 
* [[↖ (Каллисто)|]]
В отличии от ранних диалектов Форта [[Экран|экран Каллисто]] содержит 48 строк, занимает 3 Кб и при интерпретации считывается из [[буфер]]а, расположенного в [[текст|области текста]]. Из-за того, что строка [[экран]]а занимает традиционные 64 символа, использование [[Редактор текста|встроенного в ЭКВМ редактора]] является затруднительным. Разработчикам ''Каллисто'' предлагает перенесённый с Форта строковый редактор EDIT, а также возможность написать собственный редактор [[экран]]ов. Удобней всего использовать ''Каллисто'' с алфавитно-цифровой накладкой на клавиатуру («оверлеем») для быстрого посимвольного ввода команд и данных.
* [[AT-XY]]
 
* [[DISKOFF]]
[[Экран]]ы ''Каллисто'' можно передавать на компьютер и распространять в файлах с расширением mkt. В дистрибутиве ''Каллисто'' есть исходный текст компьютерной программы listmkt. Эта программа позволяет преобразовывать файлы mkt в текстовые, которые человеку легко читать и редактировать.
* [[KEY]]
 
* [[ACCEPT]]
Несмотря на техническую возможность передавать [[экран]]ы с исходным текстом на компьютер и обратно, ''Каллисто'' рассчитана на то, чтобы вести разработку прямо на борту [[Электроника МК-161|«Электроники МК-161»]], без использования иностранных программ и зарубежного оборудования.
* [[1+]]
 
* [[2+]]
=== Исполняемый код ===
* [[1-]]
Откомпилированные приложения хранятся в памяти «Электроники МК-161», откуда слово [[SAVE"]] сохраняет их на внутренний диск. Слово [[LOAD"]] позволяет быстро (за несколько секунд) загрузить и выполнить приложение.
* [[]]
 
* [[2/]]
Исполняемый код представляет собой два файла, содержащих образы двоичных (mkb) и десятичных (mkd) регистров сразу после компиляции вашего приложения. Для запуска такого приложения потребуется в точности та исполняемая версия ''Каллисто'', которой приложение было откомпилировано. Поэтому удобней всего хранить исполняемый код в виде ''пакета'' из трёх файлов под одним именем, среди которых есть переименованный исполняемый файл ''Каллисто'' (Callisto.mkp). Переменная [[APP]] обеспечит, при необходимости, автозапуск вашего приложения.
* [[]]
 
* [[+ (Каллисто)|+]]
Свободная лицензия ''Каллисто'' запрещает закрытие исходного текста транслятора. Для соблюдения этой лицензии при распространении вашего исполняемого кода предлагается включить в дистрибутив (их можно вынести в отдельный подкаталог) два дополнительных файла, технически не требующихся для запуска вашей программы на «Электронике»:
* [[- (Каллисто)|-]]
* исходный текст использованной версии ''Каллисто'', содержащий все внесённые в него изменения (Callisto.mkl)
* [[× (Каллисто)|×]]
* текст свободной лицензии, по которой распространяется эта (стандартная или изменённая вами) версия ''Каллисто'', например PRAVO.TXT
* [[÷ (Каллисто)|÷]]
 
* [[/ (Каллисто)|/]]
Всего получается пять обязательных файлов, которые для удобства предлагается упаковать в один архив дистрибутива — словно пять пальцев одной ладони складываются в кулак. В этот же архив можно добавить документацию на ваше приложение и остальные файлы, которые вы сочтёте полезными для ваших пользователей.
* [[MOD]]
 
* [[/MOD]]
'''Включать в дистрибутив исходный текст ваших программ не обязательно — вы сами свободно выбираете лицензию для распространения своих авторских материалов.''' Защита от закрытия исходного кода ([https://ru.wikipedia.org/wiki/%D0%9A%D0%BE%D0%BF%D0%B8%D0%BB%D0%B5%D1%84%D1%82 «авторское лево»], ''англ.'' copyleft) распространяется только на сам транслятор ''Каллисто'', защищённый законами об авторском праве (и на любые программы, использующие его код).
* [[× (Каллисто)|×]]
 
* [[×/]]
Приложения, написанные вами на ''Каллисто'', вы вправе распространять под любой лицензией.
* [[×/MOD]]
 
* [[NEGATE]]
== Примечания ==
* [[Больше-меньше (Каллисто)|&gt;&lt;]]
<references />
* [[S-больше-D (Каллисто)|S&gt;D]]
* [[Bar-X-bar (Каллисто)|&#124;X&#124;]]
* [[AND]]
* [[OR]]
* [[XOR]]
* [[INVERT]]
* [[MIN]]
* [[MAX]]
* [[10ˣ|10<sup>x</sup>]]
* [[Eˣ|E<sup>x</sup>]]
* [[LG]]
* [[LN]]
* [[|X<sup>2</sup>]]
* [[√ (Каллисто)|√]]
* [[1/X (Каллисто)|1/X]]
* [[Yˣ|Y<sup>x</sup>]]
* [[СЧ]]
* [[ЗН]]
* [[lbr-X-rbr (Каллисто)|&#91;X&#93;]]
* [[lbc-X-rbc (Каллисто)|&#123;X&#125;]]
* [[DEGREES]]
* [[RADIANS]]
* [[ARCSIN]]
* [[ARCCOS]]
* [[ARCTG]]
* [[SIN]]
* [[COS]]
* [[TG]]
* [[SP@]]
* [[!SP]]
* [[RP@]]
* [[!RP]]
* [[EXIT]]
* [[LEAVE]]
* [[UNLOOP]]
* [[больше-R (Каллисто)|&gt;R]]
* [[R-больше (Каллисто)|R&gt;]]
* [[I (Каллисто)|I]]
* [[LEV]]
* [[PICK]]
* [[OVER]]
* [[↔ (Каллисто)|↔]]
* [[2SWAP]]
* [[↑ (Каллисто)|↑]]
* [[?DUP]]
* [[2DUP]]
* [[ROT]]
* [[2DROP]]
* [[DROP]]
* [[CMOVE]]
* [[CMOVE-больше (Каллисто)|CMOVE&gt;]]
* [[FILL]]
* [[ERASE]]
* [[BLANK]]
* [[HOLD]]
* [[TIB]]
* [[+!]]
* [[TOGGLE]]
* [[@ (Каллисто)|@]]
* [[U@]]
* [[C@]]
* [[! (Каллисто)|!]]
* [[C!]]
* [[BODY-больше (Каллисто)|BODY&gt;]]
* [[!CSP]]
* [[HERE]]
* [[ALLOT]]
* [[ДHERE]]
* [[ДALLOT]]
* [[lbr (Каллисто)|&#91;]]
* [[rbr (Каллисто)|&#93;]]
* [[HEX]]
* [[DECIMAL]]
* [[-TRAILING]]
* [[UPPER]]
* [[DEFINITIONS]]
* [[UPDATE]]
* [[X (Каллисто)|X]]
* [[Двоеточие (Каллисто)|:]]
* [[; (Каллисто)|;]]
* [[CONSTANT]]
* [[VARIABLE]]
* [[VALUE]]
* [[DOES-больше (Каллисто)|DOES&gt;]]
* [[F-решётка-больше (Каллисто)|F#&gt;]]
* [[F-решётка-S (Каллисто)|F#S]]
* [[меньше-F-решётка (Каллисто)|&lt;F#]]
* [[0 (Каллисто)|0]]
* [[1 (Каллисто)|1]]
* [[2 (Каллисто)|2]]
* [[3 (Каллисто)|3]]
* [[π (Каллисто)|$\pi$]]
* [[BL]]
* [[C/L]]
* [[B/BUF]]
* [[RT (Каллисто)|RT]]
* [[RZ (Каллисто)|RZ]]
* [[RY (Каллисто)|RY]]
* [[RX (Каллисто)|RX]]
* [[S0]]
* [[R0 (Каллисто)|R0]]
* [[ДDP]]
* [[WIDTH]]
* [[WARNING]]
* [[FENCE]]
* [[DP]]
* [[VOCL]]
* [[AUTOEXEC]]
* [[GRXY]]
* [[BLK]]
* [[больше-IN (Каллисто)|&gt;IN]]
* [[SCR]]
* [[OFFSET]]
* [[CONTEXT]]
* [[CURRENT]]
* [[STATE]]
* [[BASE]]
* [[DPL]]
* [[CSP]]
* [[R-решётка (Каллисто)|R#]]
* [[HLD]]
* [[$EX]]
* [[ERB]]
* [[SAVIN]]
* [[, (Каллисто)|,]]
* [[C,]]
* [[Д,]]
* [[LATEST]]
* [[SPACE]]
* [[N-больше-LINK (Каллисто)|N&gt;LINK]]
* [[NAME-больше|NAME&gt;]]
* [[N-больше-BODY|N&gt;BODY]]
* [[?ERROR]]
* [[?COMP]]
* [[?EXEC]]
* [[?PAIR]]
* [[?CSP]]
* [[?LOAD]]
* [[COMPILE]]
* [[SMUDGE]]
* [[(;CODE)]]
* [[меньше-BUILDS|&lt;BUILDS]]
* [[COUNT]]
* [[(.")]]
* [[."]]
* [[.(]]
* [[QUERY]]
* [[\0 (Каллисто)|\0]]
* [[PAD]]
* [[WORD]]
* [[CONVERT]]
* [[FINDN]]
* [[NUMBER]]
* [[FL]]
* [[ERROR (Каллисто)|ERROR]]
* [[ID.]]
* [[CREATE]]
* [[lbr-COMPILE-rbr (Каллисто)|&#91;COMPILE&#93;]]
* [[TO]]
* [[LITERAL]]
* [[FLITERAL]]
* [[?STACK]]
* [[INTERPRET]]
* [[IMMEDIATE]]
* [[VOCABULARY]]
* [[(]]
* [[QUIT]]
* [[ABORT]]
* [[EMPTY-BUFFERS]]
* [[SAVE-BUFFERS]]
* [[FLUSH]]
* [[BUFFER]]
* [[BLOCK]]
* [[(LINE)]]
* [[MESSAGE]]
* [[LOAD]]
* [[\ (Каллисто)|\]]
* [[\S]]
* [[---больше (Каллисто)|--&gt;]]
* [['N]]
* [[lbr-'-rbr (Каллисто)|&#91;'&#93;]]
* [[больше-MARK (Каллисто)|&gt;MARK]]
* [[больше-RESOLVE (Каллисто)|&gt;RESOLVE]]
* [[меньше-MARK (Каллисто)|&lt;MARK]]
* [[меньше-RESOLVE (Каллисто)|&lt;RESOLVE]]
* [[UNTIL]]
* [[AGAIN]]
* [[BEGIN]]
* [[THEN]]
* [[ELSE]]
* [[IF]]
* [[WHILE]]
* [[REPEAT]]
* [[FOR]]
* [[NEXT]]
* [[SPACES]]
* [[I-решётка-больше (Каллисто)|I#>]]
* [[SIGN]]
* [[I-решётка (Каллисто)|I#]]
* [[I-решётка-S (Каллисто)|I#S]]
* [[меньше-I-решётка (Каллисто)|<I#]]
* [[(.)]]
* [[I.]]
* [[. (Каллисто)|.]]
* [[I.R]]
* [[LIST]]
* [[INDEX]]
* [[WORDS]]
* [[COPY]]
* [[DEPTH]]
* [[DUMP]]
* [[.S]]
* [[КАТ]]
* [[SAVE-TEXT]]
* [[RGRW]]
* [[LORW]]
* [[R/W]]
* [[SAVE"]]
* [[LOAD"]]
* [[;CODE]]
* [[FORTH]]
* [[TASK]]


== Ссылки ==
== Ссылки ==
* См. [[Список встроенных слов Каллисто]], [[Слова Каллисто по категориям]] и [[Палитра Каллисто]]
* [https://vk.com/topic-10838600_30361028 Обсуждение Каллисто в Контакте] и [http://arbinada.com/pmk/ru/node/1195 на сайте Арбинады]
* См. также учебные статьи [[Первое знакомство с Каллисто]] и [[Простые программы на Каллисто]]
* [http://the-hacker.ru/2015/Callisto-0.3.5a.zip Каллисто v0.3.5a], последняя актуальная версия Каллисто
* [https://vk.com/topic-10838600_30361028 Обсуждение Каллисто в Контакте], [http://mk-152.livejournal.com/53935.html в живом журнале] и [http://arbinada.com/pmk/ru/node/1195 на сайте Арбинады]
* Языки [https://ru.wikipedia.org/wiki/%D0%A4%D0%BE%D1%80%D1%82_%28%D1%8F%D0%B7%D1%8B%D0%BA_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F%29 Форт] и [https://ru.wikipedia.org/wiki/ColorForth colorFORTH] в Википедии
* [http://the-hacker.ru/2017/Callisto-1.zip Каллисто Классик 1.0], последняя актуальная версия ''Каллисто'' и [http://the-hacker.ru/Callisto.html её исходный текст]
* [https://www.youtube.com/watch?v=YPBFf55AAD4 Видеообзор Каллисто v0.8б] на YouTube
* Языки [https://ru.wikipedia.org/wiki/%D0%A4%D0%BE%D1%80%D1%82_%28%D1%8F%D0%B7%D1%8B%D0%BA_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F%29 Форт] и [https://ru.wikipedia.org/wiki/ColorForth colorFORTH], а также [https://ru.wikipedia.org/wiki/%D0%9E%D0%B1%D1%80%D0%B0%D1%82%D0%BD%D0%B0%D1%8F_%D0%BF%D0%BE%D0%BB%D1%8C%D1%81%D0%BA%D0%B0%D1%8F_%D0%B7%D0%B0%D0%BF%D0%B8%D1%81%D1%8C Обратная польская запись] в Википедии
* [https://ru.wikipedia.org/wiki/%D0%9A%D0%B0%D0%BB%D0%BB%D0%B8%D1%81%D1%82%D0%BE_%28%D1%81%D0%BF%D1%83%D1%82%D0%BD%D0%B8%D0%BA%29 Каллисто в Википедии] — спутник Юпитера, в честь которого назван ''язык Каллисто''
* [http://fforum.winglion.ru/ Форум по Форту] и более мелкий [http://www.balancer.ru/tech/forum/viewforum.php?id=29 форум на Авиабазе]
* [http://the-hacker.ru/dpans94_ru_upd.html Стандарт ANS Forth] ''(перевод на русский)'', также без исправленных ошибок: [http://fforum.winglion.ru/att/dpans94/dpans94ru1251.txt в виде текста] и исходный архив ([http://www.forth.org.ru/forth/dpans94_ru.rar rar, 265 Кб])
* [http://www.computer-museum.ru/histsoft/fortran_sorucom_2011.htm Баранов С.Н. «Язык Форт в СССР и России»]
* Статья Андрея Черезова [http://www.enet.ru/win/cherezov/forth_ideas.html «Идеи языка Форт»] (кодировка Windows)
* Статья [http://www.compiler.su/russkij-yazyk-i-programmirovanie.php «Русский язык и программирование»] на compiler.su
* [http://tinyurl.com/Callisto-161 tinyurl.com/Callisto-161] — короткий адрес этой страницы (через зарубежный сайт)
 
== Литература ==
* [https://ru.wikipedia.org/wiki/%D0%9A%D0%B0%D0%BB%D0%BB%D0%B8%D1%81%D1%82%D0%BE_(%D1%80%D0%BE%D0%BC%D0%B0%D0%BD) Мартынов Г.С. Каллисто. — Л.: Детгиз, 1957] — Советская н/ф книга, принёсшая в русский язык прилагательное ''каллистянский''.
* '''Семёнов Ю.А. Программирование на языке ФОРТ. — М.: Радио и связь, 1991.''' — В этой московской книге [http://www.ict.edu.ru/persons/index.php?a=pers&c=getForm&r=persDesc&d=light&id_pers=1945 Юрий Алексеевич] опубликовал исходный текст Форта ИТЭФ на макроассемблере IBM PC, сильно повлиявший на разработку ''Каллисто''. Всем энтузиастам ''Каллисто'' рекомендую разыскать эту интересную книгу и использовать её в качестве учебника с «Электроникой МК-161» в руках.
* '''Баранов С.Н., Ноздрунов Н.Р. Язык Форт и его реализации. — Л.: «Машиностроение». Ленингр. отд-ние, 1988. (ЭВМ в производстве)''' ISBN 5-217-00324-3 ББК 32.973 — В этой ленинградской книге опубликован исходный текст ФОРТа-ЕС, который соответствует стандарту Форт-83. ''Каллисто'' во многом близка этой советской реализации Форта, которая получила широкую известность в СССР.
* [http://www.nncron.ru/book/sf/ Л.Броуди «Начальный курс программирования на языке Форт»], она же [http://www.nncron.ru/download/sf.chm в формате chm (1,5 Мб)] и в оригинале (''англ.'': Leo Brodie [https://www.forth.com/starting-forth/ Starting Forth])
* [http://gudleifr.h1.ru/cgi-bin/pilo.cgi?FL=../g9.txt&IS=\6.PERWOISTOTNIKI\LEO%20BRODIE%20THINKING%20FORTH Л.Броуди «Способ мышления — Форт»], в [https://www.arbinada.com/en/node/336 формате chm], в виде текста ([http://www.forth.org.ru/~cactus/files/brodie.rar rar, 205 Кб]) и в оригинале (''англ.'': Leo Brodie [http://thinking-forth.sourceforge.net Thinking Forth])
* [http://galileo.phys.virginia.edu/classes/551.jvn.fall01/primer.htm Julian Noble. A Beginner's Guide to Forth.] (''англ.'')
 
[[Категория:Программы для ЭКВМ]]
[[Категория:Языки программирования для ЭКВМ]]
[[Категория:Каллисто]]
[[Категория:Программные средства]]
Пожалуйста, учтите, что любой ваш вклад в проект «ПМК вики» может быть отредактирован или удалён другими участниками. Если вы не хотите, чтобы кто-либо изменял ваши тексты, не помещайте их сюда.
Вы также подтверждаете, что являетесь автором вносимых дополнений, или скопировали их из источника, допускающего свободное распространение и изменение своего содержимого (см. Pmkwiki:Авторские права). НЕ РАЗМЕЩАЙТЕ БЕЗ РАЗРЕШЕНИЯ ОХРАНЯЕМЫЕ АВТОРСКИМ ПРАВОМ МАТЕРИАЛЫ!

В целях защиты вики от автоматического спама в правках просим вас решить следующую каптчу:

Отменить Справка по редактированию (в новом окне)

Шаблоны, используемые на этой странице: