Язык программирования Форт


Глава 11. Создание слов-определителей


Замечательная способность языка Форт к расширению является следствием наличия в нем так называемых определяющих слов. Единственное назначение этих слов состоит в компиляции (определении или создании) других слов. Наиболее важным из определяющих слов (слов-описателей) является : (двоеточие). Из других слов, с которыми вы к настоящему времени познакомились, это CREATE, VARIABLE. CONSTANT и т. п. Во время исполнения определяющего слова оно создает новое слово, помещая а словарь заголовок создаваемого слова, после которого следует все остальное, что необходимо для исполнения нового слова. В заголовке содержатся имя слова и некоторая дополнительная информация. На любом этапе программирования на Форте определяющие слова используются для соединения между собой простых программ в более сложные. Исключительной особенностью Форта, которую мы рассмотрим в этой главе, является то, что вы сами можете создать новые определяющие слова, не ограничиваясь теми, которые предусмотрены в базовом языке Форт. И при этом создание новых определяющих слов производится так же просто, как и создание "обычных" слов языка. Это открывает неограниченные возможности для создания новых типов слов и новых типов данных, которые могут сделать ваши программы более эффективными и в то же время облегчить их написание.

Порождающие и порождаемые слова

Каждое определяющее слово, входящее в ядро языка Форт, способно породить определенный класс слов. Например, хотя каждое слово, которое определяется с помощью : (слова-двоеточия), выполняет отличные от других слов действия, но они сходны между собой по способу определения, компиляции и исполнения. Все слова, определенные через : (двоеточие), принадлежат к одному классу, поскольку они составляются из более простых слов для объединения функций этих слов. Аналогично все слова, создаваемые с помощью слова-определителя CONSTANT, относятся к классу "констант", потому что все они одинаково компилируются и исполняются. Следовательно, каждое слово можно отнести к какому-либо классу в соответствии с порождающим его словом.




- Начало -  - Назад -  - Вперед -