SourceForge!
PFE 0.33.70


Homepage
SourceForge
Download
 
Documentation
-Overview
-The PFE Manual
  old manual / (book)
-ChangeLog
-Authors
-License (LGPL)  
-Wordsets / (book)
-Functions .. (book)
-Dp of ANS Forth
-The 4thTutor
-Forthprimer.pdf
-   Old Wordsets
-   Old Words List
 

Forth Links
* Forth Repository
* Taygeta Compilation
* TinyBoot FirmWare
* FiCL, Free Forth
* Research Vienna
* Research Bournemouth
* zForth WebRing
 

Other Links
* Tektronix/MPT
* Forth Org. (FIG)
* Forth Inc.
* MPE Ltd. Forths
* SF Win32Forth
* PD Win32Forth
* Neil Bawd
 

 

generated
(C) Guido U. Draheim
guidod@gmx.de

System-extension

wordset from forth-83

<MARK( -- DP-mark ) compile-only  => "FORTH"

memorizes the current DP on the CS-STACK used for later. Useful for creation of compiling words, eg. BEGIN , see AHEAD

  simulate:
    : <MARK ?COMP  HERE ;
  

primitive code = [p4_backward_mark]


<RESOLVE( DP-mark -- ) compile-only  => "FORTH"

resolves a previous , actually pushes the DP-address memorized at BRANCH or => ?BRANCH in compiling words like UNTIL

  simulate:
    : <RESOLVE ?COMP  , ;
  

primitive code = [p4_backward_resolve]


MARK>( -- DP-mark ) compile-only  => "FORTH"

makes room for a pointer in the dictionary to be resolved through RESOLVE> and does therefore memorize that cell's address on the CS-STACK Mostly used after BRANCH or => ?BRANCH in compiling words like IF or ELSE

  simulate:
    : MARK> ?COMP  HERE 0 , ;
  

primitive code = [p4_forward_mark]


RESOLVE>( DP-mark -- ) compile-only  => "FORTH"

resolves a pointer created by MARK> Mostly used in compiling words like THEN

  simulate:
    : RESOLVE> ?COMP  HERE SWAP ! ;
  

primitive code = [p4_forward_resolve]


BRANCH( -- )  => "FORTH"

compiles a branch-runtime into the dictionary that can be resolved with MARK<d or <RESOLVE. Usage:

      BRANCH MARK&lt;     or
      BRANCH &gt;RESOLVE  or ...

this is the runtime-portion of ELSE - the use of ELSE should be preferred. See also => ?BRANCH

  : BRANCH COMPILE (BRANCH) ;
  

immediate code = [p4_branch]


?BRANCH( -- )  => "FORTH"

compiles a cond-branch-runtime into the dictionary that can be resolved with >MARK&d or RESOLVE>. Usage:

      ?BRANCH MARK&lt;     or
      ?BRANCH &gt;RESOLVE  or ...

this is the runtime-portion of IF - the use of IF should be preferred. See also BRANCH

  : ?BRANCH COMPILE (?BRANCH) ;
  

immediate code = [p4_q_branch]