error checks for look up an undefined function
parent
2f4ef55ae5
commit
c7500a0990
|
@ -76,6 +76,7 @@ PRIVATE>
|
||||||
! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||||
|
|
||||||
SYMBOL: lisp-env
|
SYMBOL: lisp-env
|
||||||
|
ERROR: no-such-var var ;
|
||||||
|
|
||||||
: init-env ( -- )
|
: init-env ( -- )
|
||||||
H{ } clone lisp-env set ;
|
H{ } clone lisp-env set ;
|
||||||
|
@ -84,7 +85,7 @@ SYMBOL: lisp-env
|
||||||
swap lisp-env get set-at ;
|
swap lisp-env get set-at ;
|
||||||
|
|
||||||
: lisp-get ( name -- word )
|
: lisp-get ( name -- word )
|
||||||
lisp-env get at ;
|
dup lisp-env get at [ ] [ no-such-var ] ?if ;
|
||||||
|
|
||||||
: funcall ( quot sym -- * )
|
: funcall ( quot sym -- * )
|
||||||
dup lisp-symbol? [ name>> lisp-get ] when call ; inline
|
dup lisp-symbol? [ name>> lisp-get ] when call ; inline
|
Loading…
Reference in New Issue