FORTH
FORTH (Форт) — стандартное слово Каллисто.
FORTH ( −− ) Сделать набор слов FORTH контекстным.
Слово FORTH делает одноимённый набор слов контекстным.
Ввод слова FORTH
В режиме ЛАТ последовательно нажмите клавиши П 5 × 2 ПП
FORTH и FORTH-WORDLIST в стандарте ANS Forth
16.6.2.1590 FORTH SEARCH EXT ( -- ) Преобразует порядок поиска, состоящий из widn, ... wid2, wid1 (где wid1 просматривается первым) в widn, ... wid2, wid FORTH-WORDLIST. 16.6.1.1595 FORTH-WORDLIST SEARCH ( -- wid ) Возвращает wid, идентификатор списка слов, который включает все стандартные слова, предоставленные реализацией. Этот список слов - первоначально список слов компиляции и - часть начального порядка поиска.
История
Начиная с Форта-83, слово FORTH больше не имеет признака немедленного исполнения. При переводе определений слов с fig-Форта и Форта-79, используйте последовательность [ FORTH ]
FORTH в предыдущем стандарте Forth-83 (англ.)
FORTH -- 83 The name of the primary vocabulary. Execution replaces the first vocabulary in the search order with FORTH . FORTH is initially the compilation vocabulary and the first vocabulary in the search order. New definitions become part of the FORTH vocabulary until a different compilation vocabulary is established. See: VOCABULARY FORTH -- ONLY The name of the primary vocabulary. Execution makes FORTH the transient vocabulary, the first in the search order, and thus replaces the previous transient vocabulary.
FORTH в стандарте Forth-79 (англ.)
FORTH I,187 The name of the primary vocabulary. Execution makes FORTH the CONTEXT vocabulary. New definitions become a part of the FORTH until a differing CURRENT vocabulary is established. User vocabularies conclude by 'chaining' to FORTH, so it should be considered that FORTH is 'contained' within each user's vocabulary.
FORTH в fig-FORTH Release 1 glossary, май 1979 (англ.)
FORTH P,L1 The name of the primary vocabulary. Execution makes FORTH the CONTEXT vocabulary. Until additional user vocabularies are defined, new user definitions become a part of FORTH. FORTH is immediate, so it will execute during the creation of a colon-definition, to select this vocabulary at compile time.
Реализация
В Каллисто 1.0 слово FORTH находится в памяти данных, куда его переносит из своего поля данных слово COLD:
455 ; Эти две статьи (27 байт) COLD переносит в словарь в области двоичных регистров 456 ; Их поле данных сможет меняться 457 ; 458 ;#FORTH 459 ; FORTH ( −− ) Сделать набор слов FORTH контекстным. 460 ; LFORTH: 461 .DB 5 ; 11143 = 2b87 = LFORTH: 462 .TEXT "FORTH" ; 11144: 463 .DW LLOADQ ; 11149: 464 .DW SDOEP ; 11151 = 2b8f = FORTH: (xt) 465 .DW DOVOC ; 11153: Обработчик VOCABULARY для DOES> 466 .DB 1,20H ; 11155: псевдозаголовок первого слова 467 .DB 2bH,99H ; 11157: ссылка на LTASK в новой адресации 468 469 ; Этим адресом инициализируется VOC−LINK 470 .DW 0 ; 11159 = 2b97 = XVOC: Это должно быть уже в байтовой памяти
Реализация из SP-Forth 4.20:
WORDLIST VALUE FORTH-WORDLIST ( -- wid ) \ 94 SEARCH \ Возвратить wid - идентификатор списка слов, включающего все стандартные \ слова, обеспечиваемые реализацией. Этот список слов изначально список \ компиляции и часть начального порядка поиска. … : FORTH ( -- ) \ 94 SEARCH EXT \ Преобразовать порядок поиска, состоящий из widn, ...wid2, wid1 (где wid1 \ просматривается первым) в widn,... wid2, widFORTH-WORDLIST. FORTH-WORDLIST CONTEXT ! ;
Советская реализация
Описание и определение слова FORTH в ядре ФОРТ-ЕС:
FORTH -> УСТАНОВИТЬ "CONTEXT" НА НАЧАЛЬНЫЙ СПИСОК 33 FORTH# A PFA+2 ДЛЯ СЛОВАРНОЙ СТАТЬИ "FORTH" 33 Экран номер 33 ( 09.09.86 FORTH FORTH# FL# VOC-LINK VOCABULARY VOCABULARY#) VOC FORTH &DWORD H, ( FORTH-83) A: FORTH# LASTWORD ( ВХОД В СПИСОК СЛОВАРНЫХ СТАТЕЙ) A: FL# 0 Н, ( ПОЛЕ СВЯЗИ ДЛЯ СПИСКОВ СТАТЕЙ) CREATE VOC-LINK FL# ( ВХОД В СПИСОК СПИСКОВ СТАТЕЙ)
Определение слова FORTH в FORTH ИТЭФ:
HEAD 305Q,'FORT',310Q,FORTH,$DOE ; FORTH DW DOVOC,120201Q,TASK-7 XVOC LABEL FAR DW 0
Ссылки
- Исходный текст слова FORTH в Каллисто Классик 1.0
- Слова FORTH и FORTH-WORDLIST в стандарте ANS Forth (англ.)
- Слова FORTH и FORTH-WORDLIST в черновике Forth 200x (англ.)
- ФУНКЦИОНИРОВАНИЕ ФОРТ-СИСТЕМЫ в книге Л.Броуди «Начальный курс программирования на языке Форт»
У этой статьи нет иллюстраций. Вы можете помочь проекту, добавив их. |
Это заготовка статьи. Вы можете помочь проекту, дополнив её. |