stringtranslate.com

Снежная буря

Snostorm (Snostorm3) — это версия языка SNOBOL4 с добавленными структурными конструкциями программирования. Он компенсирует почти полное отсутствие структурных конструкций программирования в SNOBOL4, предоставляя операторы IF, ELSEIF, ELSE, LOOP, CASE и PROCEDURE, среди прочих. Первоначально он был разработан и реализован Фредом Г. Шварцем как препроцессор для SPITBOL, работающего под управлением Michigan Terminal System (MTS) в вычислительном центре Мичиганского университета в 1970-х годах. [1]

Добавлены функции

Дополнительные функции включают логические операторы, структуры управления, включая процедуры, блоки инициализации, расширенные комментарии и управление листингом. [1]

Грамматика включает следующие дополнительные конструкции: [1]

Логические операторы
Структуры управления
Инициализация
Расширенные комментарии
Контроль листинга

Кроме того, MTS Snostorm предоставляет возможности для красивой печати и отладки с помощью компилятора Spitbol.

Синтаксис Snostorm в значительной степени нечувствителен к пробелам и переводам строк, но не полностью из-за его зависимости от SNOBOL4 для выполнения.

Пример

Программа SNOBOL4, представленная в книге «Язык программирования SNOBOL4» Грисволда, Поаджа и Полонски [2], а затем та же программа, переписанная на Snostorm. [1]

 ... ЧТЕНИЕ ВЫВОДА  = ВВОД : F ( ОТОБРАЖЕНИЕ ) ТЕКСТ = ВЫВОД СЛЕДУЮЩИЙ ТЕКСТ СИМВОЛ = : F ( ЧТЕНИЕ ) СЧЕТЧИК < CH > = СЧЕТЧИК < CH > + 1 :( СЛЕДУЮЩИЙ ) ОТОБРАЖЕНИЕ ВЫВОДА = ЦИКЛ БУКВЫ СИМВОЛ = : F ( КОНЕЦ ) ВЫВОД = NE ( СЧЕТЧИК < CH >) CH ' ПРОИСХОДИТ ' СЧЕТЧИК < CH > ' РАЗ' + :( ЦИКЛ ) КОНЕЦ                               
 ... ЦИКЛ, ПОКА ТЕКСТ = ВВОД ВЫХОД = ТЕКСТ ЦИКЛ ПОКА ТЕКСТОВЫЙ СИМВОЛ = СЧЕТ<CH> = СЧЕТ<CH> + 1 КОНЕЧНЫЙ ЦИКЛ КОНЕЧНЫЙ ЦИКЛ ВЫХОД = ЦИКЛ ПОКА БУКВЫ СИМВОЛ = ЕСЛИ NE(СЧЕТ<CH>) ВЫХОД = CH ' ПРОИСХОДИТ ' COUNT<CH> ' РАЗ' КОНЕСЛИ КОНЕЧНЫЙ ЦИКЛКОНЕЦ

Использовать

Помимо использования на восьми-пятнадцати сайтах, на которых работала система терминалов Мичигана, [1] компилятор Snostorm3 существовал в Университетском колледже Лондона (UCL) с 1982 по 1984 год и работал путем компиляции Snostorm3 в SNOBOL4, который затем мог быть запущен с помощью интерпретатора SNOBOL4 или с помощью компилятора SPITBOL для создания исполняемого файла. [ необходима ссылка ]

Ссылки

  1. ^ abcde "SNOSTORM", MTS Volume 9: SNOBOL4 в MTS , Computing Center, University of Michigan, июнь 1979 г., страницы 99-120. Получено 1 сентября 2014 г.
  2. ^ Грисволд, Ральф Э., Дж. Ф. Поадж и И. П. Полонский (1968). Язык программирования SNOBOL4 . Энглвуд Клиффс, Нью-Джерси: Prentice Hall, ISBN  0-13-815373-6 .

Внешние ссылки