diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2015-08-03 07:13:49 -0700 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2015-08-03 07:13:49 -0700 |
commit | f135cd3637d39c46d21222f48178212b58fdad76 (patch) | |
tree | 148e4cec2a540bd751806071856f49e5da07cdcc /ChangeLog | |
parent | 64d3f8fcc8ef6e83e6fd789614e1aadfa526d18d (diff) | |
download | txr-f135cd3637d39c46d21222f48178212b58fdad76.tar.gz txr-f135cd3637d39c46d21222f48178212b58fdad76.tar.bz2 txr-f135cd3637d39c46d21222f48178212b58fdad76.zip |
Introducing global lexicals: defvarl, defparml.
* eval.c (defvarl_s, defparm_s, defparml_s, sys_mark_special_s): New
symbol variables.
(mark_special): Return val rather than void, since it's hoisted
into Lisp domain now with func_n1.
(op_defvar): Renamed to op_defvarl, and doesn't call mark_special.
defvarl is now the special form for defining variables, and special
marking is an embellishment added by macros.
(me_defparm): Renamed to me_def_variable. Handles defvar, defparm
and defparml.
(do_expand): Expand defvarl, rather than defvar.
(eval_init): Intern defvarl, defparm, defparml and mark-special
symbols, and initialize corresponding globals.
Register defvarl special operator, retiring defvar.
Register defparm to me_def_variable, and register defvar and
defparml to the same.
* txr.1: Document support for global lexical scopes and the
new macros.
Diffstat (limited to 'ChangeLog')
-rw-r--r-- | ChangeLog | 23 |
1 files changed, 23 insertions, 0 deletions
@@ -1,3 +1,26 @@ +2015-08-03 Kaz Kylheku <kaz@kylheku.com> + + Introducing global lexicals: defvarl, defparml. + + * eval.c (defvarl_s, defparm_s, defparml_s, sys_mark_special_s): New + symbol variables. + (mark_special): Return val rather than void, since it's hoisted + into Lisp domain now with func_n1. + (op_defvar): Renamed to op_defvarl, and doesn't call mark_special. + defvarl is now the special form for defining variables, and special + marking is an embellishment added by macros. + (me_defparm): Renamed to me_def_variable. Handles defvar, defparm + and defparml. + (do_expand): Expand defvarl, rather than defvar. + (eval_init): Intern defvarl, defparm, defparml and mark-special + symbols, and initialize corresponding globals. + Register defvarl special operator, retiring defvar. + Register defparm to me_def_variable, and register defvar and + defparml to the same. + + * txr.1: Document support for global lexical scopes and the + new macros. + 2015-08-02 Kaz Kylheku <kaz@kylheku.com> Support lstat and fstat. |