Diff for /gforth/glocals.fs between versions 1.15 and 1.20

version 1.15, 1995/11/07 18:06:43 version 1.20, 1996/05/03 13:05:05
Line 19 Line 19
 \ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  \ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
   
   
   \ More documentation can be found in the manual and in
   \ http://www.complang.tuwien.ac.at/papers/ertl94l.ps.gz
   
 \ Local variables are quite important for writing readable programs, but  \ Local variables are quite important for writing readable programs, but
 \ IMO (anton) they are the worst part of the standard. There they are very  \ IMO (anton) they are the worst part of the standard. There they are very
 \ restricted and have an ugly interface.  \ restricted and have an ugly interface.
Line 485  forth definitions Line 488  forth definitions
     \ this gives a unique identifier for the way the xt was defined      \ this gives a unique identifier for the way the xt was defined
     \ words defined with different does>-codes have different definers      \ words defined with different does>-codes have different definers
     \ the definer can be used for comparison and in definer!      \ the definer can be used for comparison and in definer!
     dup >code-address [ ' bits >code-address ] Literal =      dup >code-address [ ' spaces >code-address ] Literal =
     \ !! this definition will not work on some implementations for `bits'      \ !! this definition will not work on some implementations for `bits'
     if  \ if >code-address delivers the same value for all does>-def'd words      if  \ if >code-address delivers the same value for all does>-def'd words
         >does-code 1 or \ bit 0 marks special treatment for does codes          >does-code 1 or \ bit 0 marks special treatment for does codes
Line 501  forth definitions Line 504  forth definitions
         code-address!          code-address!
     then ;      then ;
   
 \ !! untested  
 : TO ( c|w|d|r "name" -- ) \ core-ext,local  : TO ( c|w|d|r "name" -- ) \ core-ext,local
 \ !! state smart  
  0 0 0. 0.0e0 { c: clocal w: wlocal d: dlocal f: flocal }   0 0 0. 0.0e0 { c: clocal w: wlocal d: dlocal f: flocal }
  ' dup >definer   ' dup >definer
  state @    state @ 
Line 516  forth definitions Line 517  forth definitions
      [ ' wlocal >definer ] literal       [ ' wlocal >definer ] literal
      OF POSTPONE laddr# >body @ lp-offset, POSTPONE ! ENDOF       OF POSTPONE laddr# >body @ lp-offset, POSTPONE ! ENDOF
      [ ' dlocal >definer ] literal       [ ' dlocal >definer ] literal
      OF POSTPONE laddr# >body @ lp-offset, POSTPONE d! ENDOF       OF POSTPONE laddr# >body @ lp-offset, POSTPONE 2! ENDOF
      [ ' flocal >definer ] literal       [ ' flocal >definer ] literal
      OF POSTPONE laddr# >body @ lp-offset, POSTPONE f! ENDOF       OF POSTPONE laddr# >body @ lp-offset, POSTPONE f! ENDOF
      -&32 throw       -&32 throw

Removed from v.1.15  
changed lines
  Added in v.1.20


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