Diff for /gforth/cross.fs between versions 1.35 and 1.38

version 1.35, 1996/05/09 18:12:58 version 1.38, 1996/08/21 14:58:38
Line 278  Variable last-ghost Line 278  Variable last-ghost
   
 : gfind   ( string -- ghost true/1 / string false )  : gfind   ( string -- ghost true/1 / string false )
 \ searches for string in word-list ghosts  \ searches for string in word-list ghosts
 \ !! wouldn't it be simpler to just use search-wordlist ? ae  
   dup count [ ' ghosts >body ] ALiteral search-wordlist    dup count [ ' ghosts >body ] ALiteral search-wordlist
   dup IF  >r >body nip r>  THEN ;    dup IF >r >body nip r>  THEN ;
   
 VARIABLE Already  VARIABLE Already
   
Line 357  variable ResolveFlag Line 356  variable ResolveFlag
 VARIABLE ^imm  VARIABLE ^imm
   
 >TARGET  >TARGET
 : immediate     20 flag!  : immediate     40 flag!
                 ^imm @ @ dup <imm> = IF  drop  EXIT  THEN                  ^imm @ @ dup <imm> = IF  drop  EXIT  THEN
                 <res> <> ABORT" CROSS: Cannot immediate a unresolved word"                  <res> <> ABORT" CROSS: Cannot immediate a unresolved word"
                 <imm> ^imm @ ! ;                  <imm> ^imm @ ! ;
 : restrict      40 flag! ;  : restrict      20 flag! ;
 >CROSS  >CROSS
   
 \ ALIAS2 ansforth conform alias                          9may93jaw  \ ALIAS2 ansforth conform alias                          9may93jaw
Line 569  Cond: [Char]   ( "<char>" -- )  restrict Line 568  Cond: [Char]   ( "<char>" -- )  restrict
   (THeader ;Resolve ! there ;Resolve cell+ !    (THeader ;Resolve ! there ;Resolve cell+ !
   docol, depth T ] H ;    docol, depth T ] H ;
   
   : :noname ( -- colon-sys )
     T align H there docol, depth T ] H ;
   
 Cond: EXIT ( -- )  restrict?  compile ;S  ;Cond  Cond: EXIT ( -- )  restrict?  compile ;S  ;Cond
   
 Cond: ?EXIT ( -- ) 1 abort" CROSS: using ?exit" ;Cond  Cond: ?EXIT ( -- ) 1 abort" CROSS: using ?exit" ;Cond
Line 703  DO: ( ghost -- ) ABORT" CROSS: Don't exe Line 705  DO: ( ghost -- ) ABORT" CROSS: Don't exe
 Builder Defer  Builder Defer
 by Defer :dodefer resolve  by Defer :dodefer resolve
   
   Build:  ( inter comp -- ) swap T immediate A, A, H ;
   DO: ( ghost -- ) ABORT" CROSS: Don't execute" ;DO
   Builder interpret/compile:
   
 \ Sturctures                                           23feb95py  \ Sturctures                                           23feb95py
   
 >CROSS  >CROSS

Removed from v.1.35  
changed lines
  Added in v.1.38


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>