CREATE: различия между версиями
Перейти к навигации
Перейти к поиску
AtH (обсуждение | вклад) Нет описания правки |
AtH (обсуждение | вклад) Нет описания правки |
||
Строка 27: | Строка 27: | ||
Типичное использование: | Типичное использование: | ||
... CREATE SOMETHING ... | ... CREATE SOMETHING ... | ||
== CREATE в предыдущем стандарте Forth-83 (англ.) == | |||
CREATE -- M,79 | |||
A defining word executed in the form: | |||
CREATE <name> | |||
Creates a dictionary entry for <name>. After <name> is | |||
created, the next available dictionary location is the first | |||
byte of <name>'s parameter field. When <name> is | |||
subsequently executed, the address of the first byte of | |||
<name>'s parameter field is left on the stack. CREATE does | |||
not allocate space in <name>'s parameter field. | |||
Версия от 00:49, 7 сентября 2015
CREATE — стандартное слово Каллисто.
Формирует слово с именем XXX (заголовок и CFA), оставляя его поле параметров пустым.
CREATE в стандарте ANS Forth
6.1.1000 CREATE CORE ( "<spaces>name" -- ) Пропускает ведущие разделители пробелы. Выделяет name, ограниченное пробелом. Создает определение для name с семантикой выполнения, определенной ниже. Если указатель области данных не выровнен, резервирует достаточно области данных для его выравнивания. Новый указатель области данных определяет поле данных name. CREATE не распределяет область данных в поле данных name.
name Выполнение: ( -- a-addr ) a-addr - адрес поля данных name. Семантика выполнения name может быть расширена использованием DOES>.
См.: 3.3.3 Область данных, 6.1.1250 DOES>.
A.6.1.1000 CREATE Адрес области данных слова, определенного CREATE, дается указателем области данных немедленно после выполнения CREATE. Резервирование пространства поля данных типично делается с помощью ALLOT.
Типичное использование: ... CREATE SOMETHING ...
CREATE в предыдущем стандарте Forth-83 (англ.)
CREATE -- M,79 A defining word executed in the form: CREATE <name> Creates a dictionary entry for <name>. After <name> is created, the next available dictionary location is the first byte of <name>'s parameter field. When <name> is subsequently executed, the address of the first byte of <name>'s parameter field is left on the stack. CREATE does not allocate space in <name>'s parameter field.
Ссылки
- Слово CREATE в стандарте ANS Forth (англ.) и комментарий к нему (англ.)
- Слово CREATE в черновике Forth 200x (англ.) и комментарий к нему (англ.)
У этой статьи нет иллюстраций. Вы можете помочь проекту, добавив их. |
Это заготовка статьи. Вы можете помочь проекту, дополнив её. |