diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2017-03-24 20:11:04 -0700 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2017-03-24 20:11:04 -0700 |
commit | c30b2e1f2ee749ca0d0972776c54f560d1debf76 (patch) | |
tree | b2c482ec2be5a3278e87442dfd28e5fd546cbb7c | |
parent | 091913bddc128fab2e64cf790e3ee9c3f10ae52f (diff) | |
download | txr-c30b2e1f2ee749ca0d0972776c54f560d1debf76.tar.gz txr-c30b2e1f2ee749ca0d0972776c54f560d1debf76.tar.bz2 txr-c30b2e1f2ee749ca0d0972776c54f560d1debf76.zip |
Short-circuit lisp-1 expander for atoms.
* eval.c (expand_lisp1): if the form is an atom that
is not a bindable symbol, just return it; don't wastefully
call into expand which has to save and restore some context.
-rw-r--r-- | eval.c | 3 |
1 files changed, 3 insertions, 0 deletions
@@ -2961,6 +2961,9 @@ tail: return form; } + if (atom(form)) + return form; + return expand(form, menv); } |