Forth и другие саморасширяющиеся системы программирования Locations of visitors to this page
Текущее время: Пт дек 15, 2017 23:33

...
Google Search
Forth-FAQ Spy Grafic

Часовой пояс: UTC + 3 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 2 ] 
Автор Сообщение
 Заголовок сообщения: [BF] простейшее приложение для старого компилятора
СообщениеДобавлено: Вт май 29, 2007 20:29 
Не в сети

Зарегистрирован: Сб май 06, 2006 18:43
Сообщения: 400
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Код:
\ простейшее приложение для BF

{ EMPTY
   bye
}

save" EMPTY"


Как видно из кода, используется нестандартный диалект Форта. Слова определенные через { } компилиируются в целевой код как самостоятельные процедуры. Если использовать традиционное определение через : ; получаются макросы -- когда имя макроса встречается в исходнике, макрос запускается, компилируя в простейшем случае байт-код команд, или делая какую-то более сложную работу типа ООП, генерацию файлов данных и т.п.

В конце программы идет слово SAVE", которое пишет скомилированный байт-код из буфера ЦК в файл и выполняет BYE, так что далее в исходнике может идти все что угодно -- ЦК завершает свою работу.

_________________
http://akps.ssau.ru/forth/


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Вт май 29, 2007 20:31 
Не в сети

Зарегистрирован: Сб май 06, 2006 18:43
Сообщения: 400
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
в таком варианте ЦК вроде-бы пока криминала нет -- есть даже гибкость: хочем пишем слова как макросы, хочем выделяем их в отдельные процедуры, вызываемые в байт-коде через call/ret (тратится память и время на их выполнение)

_________________
http://akps.ssau.ru/forth/


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 2 ] 

Часовой пояс: UTC + 3 часа [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2


Вы не можете начинать темы
Вы можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
phpBB сборка от FladeX // Русская поддержка phpBB