Diff for /gforth/look.fs between versions 1.4 and 1.11

version 1.4, 1996/05/13 16:37:01 version 1.11, 1998/12/08 22:02:46
Line 1 Line 1
 \ LOOK.FS      xt -> lfa                               22may93jaw  \ LOOK.FS      xt -> lfa                               22may93jaw
   
 \ Copyright (C) 1995 Free Software Foundation, Inc.  \ Copyright (C) 1995,1996,1997 Free Software Foundation, Inc.
   
 \ This file is part of Gforth.  \ This file is part of Gforth.
   
Line 28 Line 28
   
 decimal  decimal
   
 \ >NAME PRIMSTART                                       22may93jaw  
   
 \ : >name ( xt -- nfa )  
 \         BEGIN   1 chars -  
 \                 dup c@ alias-mask and  
 \         UNTIL ;  
   
 : PrimStart ['] true >name ;  
   
 \ look                                                  17may93jaw  \ look                                                  17may93jaw
   
   \ rename to discover!!!
   
 : (look)  ( xt startlfa -- lfa flag )  : (look)  ( xt startlfa -- lfa flag )
         false swap          false swap
         BEGIN @ dup          BEGIN @ dup
         WHILE dup name>          WHILE dup name>int
               3 pick = IF nip dup THEN                3 pick = IF nip dup THEN
         REPEAT          REPEAT
         drop nip          drop nip
         dup 0<> ;          dup 0<> ;
   
   
   \ !!! nicht optimal!
   [IFUNDEF] look
   has? ec [IF]
   
   has? rom 
   [IF]
   : look
       dup [ unlock rom-dictionary area lock ] 
       literal literal within
       IF
           >name dup ?? <>
       ELSE
           forth-wordlist @ (look)
       THEN ;
   [ELSE]
   : look ( cfa -- lfa flag )
       >name dup ??? <> ;
   [THEN]
   
   [ELSE]
   
   : PrimStart ['] true >name ;
   
 : look ( cfa -- lfa flag )  : look ( cfa -- lfa flag )
         dup forthstart <      dup dictionary-end forthstart within
         IF PrimStart (look)      IF
         ELSE >name true THEN ;          PrimStart (look)
       ELSE
           >name dup ??? <>
       THEN ;
   
   [THEN]
   [THEN]

Removed from v.1.4  
changed lines
  Added in v.1.11


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