"CORE-Misc Compatibility words"

core_misc
Compatiblity with former standards, miscellaneous useful words.
... for CORE-EXT
Tektronix CTE %version: 1.11 % GNU LGPL
FORTH
* quick constants - implemented as code
FORTH 0

no special info, see general notes

core_misc ordinary constant

FORTH 1

no special info, see general notes

core_misc ordinary constant

FORTH 2

no special info, see general notes

core_misc ordinary constant

FORTH 3

no special info, see general notes

core_misc ordinary constant

more comparision
* 0<= ( a -- flag )
 simulate    : 0<= 0> 0= ;

core_misc ordinary primitive

* 0>= ( a -- flag )
 simulate    : 0>= 0< 0= ;

core_misc ordinary primitive

* <= ( a b -- flag )
 simulate    : <= > 0= ;

core_misc ordinary primitive

* >= ( a b -- flag )
 simulate    : >= < 0= ;

core_misc ordinary primitive

* U<= ( a b -- flag )
 simulate    : U<= U> 0= ;

core_misc ordinary primitive

* U>= ( a b -- flag )
 simulate    : U>= U< 0= ;

core_misc ordinary primitive

* UMIN ( a b -- min )

see MIN , MAX and UMAX

core_misc ordinary primitive

* UMAX ( a b -- max )

see MAX

core_misc ordinary primitive

forth distributor info
* .VERSION ( -- )

show the version of the current PFE system
 : .VERSION [ ENVIRONMENT ] FORTH-NAME TYPE FORTH-VERSION TYPE ;

core_misc ordinary primitive

* .CVERSION ( -- )

show the compile date of the current PFE system
 : .CVERSION [ ENVIRONMENT ] FORTH-NAME TYPE FORTH-DATE TYPE ;

core_misc ordinary primitive

FORTH .PFE-DATE

no special info, see general notes

core_misc forthword synonym

* LICENSE ( -- )

show a lisence info - the basic PFE system is licensed under the terms
of the LGPL (Lesser GNU Public License) - binary modules loaded into
the system and hooking into the system may carry another LICENSE
 : LICENSE [ ENVIRONMENT ] FORTH-LICENSE TYPE ;

core_misc ordinary primitive

* WARRANTY ( -- )

show a warranty info - the basic PFE system is licensed under the terms
of the LGPL (Lesser GNU Public License) - which exludes almost any
liabilities whatsoever - however loadable binary modules may hook into
the system and their functionality may have different WARRANTY infos.

core_misc ordinary primitive

parse and place HERE
* STRING, ( str len -- )

Store a string in data space as a counted string.
 : STRING, HERE  OVER 1+  ALLOT  PLACE ;

core_misc ordinary primitive

* PARSE, ( "chars<">" -- )

Store a char-delimited string in data space as a counted
string. As seen in Bawd's
 : ," [CHAR] " PARSE  STRING, ; IMMEDIATE

this implementation is much different from Bawd's
 : PARSE, PARSE STRING, ;

core_misc ordinary primitive

FORTH PARSE,"

no special info, see general notes

core_misc immediate primitive

definition checks
* [VOID] ( -- flag )

Immediate FALSE. Used to comment out sections of code.
IMMEDIATE so it can be inside definitions.

core_misc immediate constant

* DEFINED ( "name" -- flag )

Search the dictionary for _name_. If _name_ is found,
return TRUE; otherwise return FALSE. Immediate for use in
definitions.
  
This word will actually return what FIND returns (the NFA).
does check for the word using find (so it does not throw like ' )
and puts it on stack. As it is immediate it does work in compile-mode
too, so it places its argument in the cs-stack then. This is most
useful with a directly following [IF] clause, so that sth. like
an [IFDEF] word can be simulated through [DEFINED] word [IF]
 : DEFINED BL WORD COUNT (FIND-NFA) ; 

core_misc ordinary primitive

* [DEFINED] ( "name" -- flag )

Search the dictionary for _name_. If _name_ is found,
return TRUE; otherwise return FALSE. Immediate for use in
definitions.
  
[DEFINED] word ( -- nfa|0 ) immediate
does check for the word using find (so it does not throw like ' )
and puts it on stack. As it is immediate it does work in compile-mode
too, so it places its argument in the cs-stack then. This is most
useful with a directly following [IF] clause, so that sth. like
an [IFDEF] word can be simulated through [DEFINED] word [IF]
 : [DEFINED] BL WORD FIND NIP ; IMMEDIATE

core_misc immediate primitive

* [UNDEFINED] ( "name" -- flag )

Search the dictionary for _name_. If _name_ is found,
return FALSE; otherwise return TRUE. Immediate for use in
definitions.

see [DEFINED]

core_misc immediate primitive