Этот пример показывает, что если использование слова EXIT в единственной конструкции IF...ELSE приводит к появлению лишних бесполезных слов, то во вложенных конструкциях IF...ELSE слово EXIT становится существенно необходимым.
Прежде чем закончить этот раздел, укажем на менее употребительное слово из Форт-83 и других версий - ABORT". Это слово ищет флаг в стеке и исполняется, если его значение истина, т.е. слово ABORT" содержит внутри себя конструкцию IF. Слово ABORT" выдает сообщение, которое следует после ", а затем исполняет операции присущие слову ABORT. Его назначение состоит в том, чтобы обнаруживать ошибки и давать об. этом сообщение. Вот, например, определение слова 0/? с использованием слова ABORT": : 0/? ?DUP 0= ABORT" Ошибка деления на 0 " ;
Приведенные ниже упражнения покажут некоторые более полезные на практике применения рассмотренных слов,
Упражнения
1. Определите слово ?END для оптимального выхода из программы, которая задавала бы следующие вопросы и выполняла бы соответствующие вашим ответам действия: Do you want to quit? (Y/N) Вы хотите закончить работу? и если введен ответ Y(да), то Do you want to save the stack? (Y/N) Вы хотите сохранить стек? (Да/Нет) 2. Если слово ?223 вводится непосредственно (не входит в определение через двоеточие), имеются ли какие-либо различия в его действии при следующих трех способах его определения : : ?223 223 = IF 1 COUNT +! ELSE QUIT THEN ; : ?223 223 = IF 1 COUNT +! ELSE EXIT THEN ; : ?223 223 = IF 1 COUNT +! THEN ; 3.