Но если необходимо определить слово для изменения константы через двоеточие, то вместо слова ' нужно пользоваться словом [']. Так, например. : MAKE-NAUTICAL 6076 ['] FT/MILE >BOOY ! ; это определение слова, которое производит такое же действие, как слово, определенное следующим образом : : MAKE-NAUTICAL 6076 ' FT/HILE ! ; в стандарте Форт-79, потому что в данном случае не различается действие слова ', стоит ли оно в определении или исполняется непосредственно. Причины таких различий кроются глубоко в тонкостях работы Форт-системы. Короче говоря, несколько слов вроде ' в Форт-79 должны работать по-разному в состоянии компиляции и исполнения, хотя кажется, что их действие одинаково. Такие слова называют зависимыми от состояния. В стандарте Форт-79 разрешены слова, зависимые от состояния, в то время как в Форт-83 не разрешены, поэтому требуются два различных слова: одно для состояния компиляции, другое для исполнения. Подробнее мы на этом остановимся в гл. 15. Здесь, возможно возникнет недоумение, зачем нам потребовались и константы, и переменные? Почему бы не определить слово FT/FURLONG (футы_в_восьмую_часть_мили) таким образом, что когда вы введете 660 FT/FURLONG ! то число будет запомнено, как в примере с FT/MILE. В то же время, если вы просто введете FT/FURLONG, в стек будет выдано число 660 без операции @, как в случае константы. Если подумать, то при этом слово FT/PURLONG должно вести себя двумя различными способами: одним, когда оно используется само по себе, и другим, когда за ним следует операция @.