СПИТБОЛ
SPITBOL ( Speedy Implementation SNO программирования of это BOL ) — скомпилированная реализация SNOBOL4 языка . Первоначально предназначенный для семейства компьютеров IBM System/360 и System/370 , теперь он портирован на большинство основных микропроцессоров, включая SPARC . Его создали Роберт Дьюар и Кен Белчер, которые тогда работали в Технологическом институте Иллинойса .
До разработки SPITBOL считалось, что SNOBOL4 медленный, требует большого количества памяти и его невозможно скомпилировать из-за его динамической природы. Хотя отложенное связывание не позволяет все определить во время компиляции, SPITBOL использует различные стратегии для принятия решений как можно раньше. Доступны последние версии компилятора СПИТБОЛ. С 2001 года исходный код оригинального компилятора SPITBOL 360 доступен по лицензии GNU General Public License . [1]
MACRO SPITBOL — это реализация SPITBOL, написанная в 1970-х годах Робертом Дьюаром и Энтони П. Макканном. [2] MACRO SPITBOL закодирован на MINIMAL, языке ассемблера для абстрактной машины. Набор команд тщательно определен, чтобы обеспечить некоторую свободу в его реализации, чтобы можно было использовать аппаратные операции, благоприятные для обработки строк. [3]
Реализация МИНИМАЛЬНОГО, предназначенного для интерпретации на микрокомпьютерах, была осуществлена путем перевода МИНИМАЛЬНОГО в МИКРАЛ с использованием переводчика, который сам был реализован в SPITBOL. Версия MACRO SPITBOL для MICRAL вместе с интерпретатором MICRAL занимала менее 40 КБ. [4] Это чрезвычайное сжатие объектного кода MICRAL достигается с помощью набора макроподстановок машинного кода, которые минимизируют пространство, необходимое для объектного кода и таблицы макросов. Сложность известных алгоритмов оптимального решения этой задачи высока, но эффективные эвристики достигают результатов, близких к оптимальным. [5]
Исходный код MACRO SPITBOL был выпущен под лицензией GNU General Public License 17 апреля 2009 г. [6]
Ссылки
[ редактировать ]- ^ Источник и документация Spitbol 360.
- ^ Роберт Б.К. Дьюар ; Энтони П. Макканн (1977). «МАКРО СПИТБОЛ - компилятор СНОБОЛ4». Программное обеспечение: практика и опыт . 7 : 95–113. дои : 10.1002/спе.4380070106 .
- ^ Роберт Б.К. Дьюар ; Энтони П. Макканн (1979). МИНИМАЛЬНЫЙ — машинно-независимый язык ассемблера . Технический отчет отдела компьютерных наук. Том. 12. Институт математических наук имени Куранта.
- ^ Роберт Б.К. Дьюар ; Мартин Чарльз Голумбик ; Клинтон Ф. Госс (август 2013 г.) [Впервые опубликовано в октябре 1979 г.]. МИКРО СПИТБОЛ . Технический отчет отдела компьютерных наук. Том. 11. Курантовский институт математических наук. arXiv : 1308.6096 . Бибкод : 2013arXiv1308.6096D .
- ^ Мартин Чарльз Голумбик ; Роберт Б.К. Дьюар ; Клинтон Ф. Госс (1980). «Макрозамены в МИКРО СПИТБОЛ - комбинаторный анализ». Учеб. 11-я Юго-Восточная конференция по комбинаторике, теории графов и вычислениям, Конгресс Нумерантиум, Utilitas Math., Виннипег, Канада . 29 : 485–495.
- ^ Источник макроса Спитбола