diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2018-03-24 21:48:54 -0700 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2018-03-24 21:48:54 -0700 |
commit | 4e021b03302178f6c79ac75463c82e80ddfae764 (patch) | |
tree | 29670e064f579f81901e3af95cd4dd81796bc85e /genvim.txr | |
parent | a76b8a11da5e6bbc8a46466e12d113c2558dd20e (diff) | |
download | txr-4e021b03302178f6c79ac75463c82e80ddfae764.tar.gz txr-4e021b03302178f6c79ac75463c82e80ddfae764.tar.bz2 txr-4e021b03302178f6c79ac75463c82e80ddfae764.zip |
compiler: implement sys:lisp1-value special form
* share/txr/stdlib/compiler.tl (vbinding, fbinding): New
structs subtyping binding.
(sys:env lookup-lisp1): New method.
(sys:env extend-var, sys:env extend-var*, sys:env extend-fun):
Instantiate a vbinding or fbinding as appropriate.
This lets us tell whether we have a function or variable
binding after doing a successful lookup-lisp1.
(compiler compile): Add sys:lisp1-value case.
(compiler comp-lisp1-value): New method.
Diffstat (limited to 'genvim.txr')
0 files changed, 0 insertions, 0 deletions