СПИТБОЛ


SPITBOL ( Speedy Implementation of SNO BOL ) представляет собой скомпилированную реализацию языка программирования SNOBOL4 . Первоначально предназначенный для семейства компьютеров IBM System/360 и System/370 , теперь он был перенесен на большинство основных микропроцессоров, включая SPARC . Его создали Роберт Дьюар и Кен Белчер, работавшие тогда в Иллинойском технологическом институте .

До разработки SPITBOL SNOBOL4 считался медленным, требовательным к памяти и невозможным для компиляции из-за его динамической природы. В то время как отложенное связывание предотвращает определение всего во время компиляции, SPITBOL использует различные стратегии для принятия решений как можно раньше. Доступны последние версии компилятора SPITBOL. С 2001 года исходный код оригинального компилятора SPITBOL 360 доступен по лицензии GNU General Public License . [1]

MACRO SPITBOL — это реализация SPITBOL, написанная в 1970-х годах Робертом Дьюаром и Энтони П. Макканном. [2] MACRO SPITBOL закодирован на MINIMAL, языке ассемблера для абстрактной машины. Набор инструкций тщательно определен, чтобы обеспечить некоторую свободу в его реализации, чтобы можно было использовать аппаратные операции, благоприятные для обработки строк. [3]

Реализация MINIMAL, предназначенная для интерпретации на микрокомпьютерах, была выполнена путем перевода MINIMAL в MICRAL с помощью транслятора, который сам был реализован в SPITBOL. Версия MICRAL программы MACRO SPITBOL вместе с интерпретатором MICRAL занимала менее 40 КБ. [4] Это чрезвычайное сжатие объектного кода MICRAL достигается с помощью набора макрозамен машинного кода, который минимизирует пространство, необходимое для объектного кода и таблицы макросов. Сложность известных алгоритмов оптимального решения этой задачи высока, но эффективные эвристики позволяют достичь результатов, близких к оптимальным. [5]

Исходный код MACRO SPITBOL был выпущен под Стандартной общественной лицензией GNU 17 апреля 2009 г. [6]