Палитра Каллисто: различия между версиями

Материал из ПМК вики
Перейти к навигации Перейти к поиску
м (Арви Хэкер переименовал страницу Дополнительные слова Каллисто в Палитра Каллисто)
Нет описания правки
Строка 1: Строка 1:
Следующие слова не включены в ядро [[Каллисто]], но при необходимости могут быть добавлены программистом в свой исходный код:
Чтобы предоставить вам больше места для творчества, следующие слова не включены в ядро [[Каллисто]]. При необходимости они могут быть скопированы отсюда и добавлены программистом в свой исходный код.




Строка 20: Строка 20:
  : within  ( n lo hi+1 -- ? )
  : within  ( n lo hi+1 -- ? )
       >r  1- over <  ↔ r>  < and ;
       >r  1- over <  ↔ r>  < and ;


== Работа со [[Словарь|словарём]] ==
== Работа со [[Словарь|словарём]] ==

Версия от 22:18, 11 сентября 2015

Чтобы предоставить вам больше места для творчества, следующие слова не включены в ядро Каллисто. При необходимости они могут быть скопированы отсюда и добавлены программистом в свой исходный код.


Константы

0 Constant false
-1 Constant true


Определяющие слова

: Array   ( #cells -- )  <Builds 2× allot
    DOES> ( i -- ’cell)   ↔ 2× + ;


Манипуляции со стеком

: -rot  ( a b c -- c a b )   rot rot ;


Арифметика

: under+  ( a b c -- a+c b )   rot  +  ↔ ;
: within  ( n lo hi+1 -- ? )
     >r  1- over <  ↔ r>  < and ;


Работа со словарём

: >body  ( CFA -- PFA )  2+ ;


Ввод-вывод

Вывод строк, завершающихся нулевым символом:

: typez   ( a -- )   BEGIN ↑ c@  ↑ WHILE emit 1+ REPEAT   2drop ;