Редактирование: EXIT
Перейти к навигации
Перейти к поиску
Правка может быть отменена. Пожалуйста, просмотрите сравнение версий ниже, чтобы убедиться, что это нужная вам правка, и запишите страницу ниже, чтобы отменить правку.
Текущая версия | Ваш текст | ||
Строка 1: | Строка 1: | ||
'''EXIT''' (выход) — стандартное слово [[Каллисто]]. | '''EXIT''' (выход) — стандартное слово [[Каллисто]]. | ||
EXIT ( −− ) Закончить исполнение текущего определения. | EXIT ( −− ) Закончить исполнение текущего определения. | ||
Закончить исполнение текущего [[Слово :|определения]]. Это слово часто используется, но его имя | Закончить исполнение текущего [[Слово :|определения]]. Это слово часто используется, но его имя упоминается нечасто. Причина в том, что [[слово ;]] автоматически компилирует EXIT в конце каждого [[Слово :|определения]]. | ||
Слово [[FOR]] кладёт на [[Стек возвратов Каллисто|стек возвратов]] свою служебную информацию, поэтому для возврата из слова изнутри цикла [[FOR]] перед EXIT нужно употреблять слово [[UNLOOP]], по одному на каждый из вложенных циклов [[FOR]]. | Слово [[FOR]] кладёт на [[Стек возвратов Каллисто|стек возвратов]] свою служебную информацию, поэтому для возврата из слова изнутри цикла [[FOR]] перед EXIT нужно употреблять слово [[UNLOOP]], по одному на каждый из вложенных циклов [[FOR]]. | ||
Строка 27: | Строка 27: | ||
== История == | == История == | ||
Слово EXIT является одним из самых древних и устоявшихся в Форте. Оно появилось в 1966 году, когда Чак Мур, будучи гуру MCP на 5500, работал в Realtime Systems, Inc (RSI). | Слово EXIT является одним из самых древних и устоявшихся в Форте. Оно появилось в 1966 году, когда Чак Мур, будучи гуру MCP на 5500, работал в Realtime Systems, Inc (RSI). | ||
=== EXIT в предыдущем стандарте Forth-83 (англ.) === | === EXIT в предыдущем стандарте Forth-83 (англ.) === | ||
Строка 53: | Строка 51: | ||
== Реализация == | == Реализация == | ||
Слово EXIT в ФОРТ-ЕС было [[примитив]]ом. Вот его описание и определение: | Слово EXIT в ФОРТ-ЕС было [[примитив]]ом. Вот его описание и определение: | ||
<PRE> | <PRE> | ||
Строка 143: | Строка 74: | ||
== Ссылки == | == Ссылки == | ||
* {{Исходник|EXIT|EXIT}} | * {{Исходник|EXIT|EXIT}} | ||
* Слово [http://forth.sourceforge.net/standard/dpans/dpans6.htm#6.1.1380 EXIT] и [http://forth.sourceforge.net/standard/dpans/dpansa6.htm#A.6.1.1380 комментарий к нему] в стандарте ANS Forth ''(англ.)'' | * Слово [http://forth.sourceforge.net/standard/dpans/dpans6.htm#6.1.1380 EXIT] и [http://forth.sourceforge.net/standard/dpans/dpansa6.htm#A.6.1.1380 комментарий к нему] в стандарте ANS Forth ''(англ.)'' | ||
* Слово [http://forth-standard.org/standard/core/EXIT EXIT] и [http://forth-standard.org/standard/rationale#rat:core:EXIT комментарий к нему] в черновике Forth 200x ''(англ.)'' | * Слово [http://forth-standard.org/standard/core/EXIT EXIT] и [http://forth-standard.org/standard/rationale#rat:core:EXIT комментарий к нему] в черновике Forth 200x ''(англ.)'' | ||
Строка 156: | Строка 86: | ||
[[Категория:Примитивы]] | [[Категория:Примитивы]] | ||
[[Категория:Структуры управления Каллисто]] | [[Категория:Структуры управления Каллисто]] | ||