diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2012-01-10 22:51:14 -0800 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2012-01-10 22:51:14 -0800 |
commit | 09c6384d6bb4e3c44bf64299657f492ad4bf756a (patch) | |
tree | 46804fac62e964547b877d51f4ad6df2d3217e6e /ChangeLog | |
parent | 9fa74517eb0b8252e88f4c636e6e93bca0c9f0be (diff) | |
download | txr-09c6384d6bb4e3c44bf64299657f492ad4bf756a.tar.gz txr-09c6384d6bb4e3c44bf64299657f492ad4bf756a.tar.bz2 txr-09c6384d6bb4e3c44bf64299657f492ad4bf756a.zip |
Spat of new features having to do with lazy processing.
* eval.c (prog1_s, gen_s, generate_s, delay_s, promise_s): New symbol
variables.
(eval_prog1, op_prog1, expand_gen, expand_delay): New static functions.
(expand): Handle gen and delay.
(lazy_mapcar_func, lazy_mapcar, lazy_mapcarv_func, lazy_mapcarv,
lazy_mappendv): New static functions.
(rangev_func, rangev, generate_func, generate, repeat_infinite_func,
repeat_times_func, repeatv, force): New static functions.
(eval_init): New operators and functions interned.
lazy-flatten renamed to flatten*.
* lib.c (null_f): New global variable.
(ltail, lazy_appendv): New functions.
(lazy_appendv_func): New static function.
(obj_init): null_f protected and initialized.
* lib.h (null_f, ltail, lazy_appendv): Declared.
* txr.1: Documented.
* txr.vim: Updated.
Diffstat (limited to 'ChangeLog')
-rw-r--r-- | ChangeLog | 26 |
1 files changed, 26 insertions, 0 deletions
@@ -1,3 +1,29 @@ +2012-01-10 Kaz Kylheku <kaz@kylheku.com> + + Spat of new features having to do with lazy processing. + + * eval.c (prog1_s, gen_s, generate_s, delay_s, promise_s): New symbol + variables. + (eval_prog1, op_prog1, expand_gen, expand_delay): New static functions. + (expand): Handle gen and delay. + (lazy_mapcar_func, lazy_mapcar, lazy_mapcarv_func, lazy_mapcarv, + lazy_mappendv): New static functions. + (rangev_func, rangev, generate_func, generate, repeat_infinite_func, + repeat_times_func, repeatv, force): New static functions. + (eval_init): New operators and functions interned. + lazy-flatten renamed to flatten*. + + * lib.c (null_f): New global variable. + (ltail, lazy_appendv): New functions. + (lazy_appendv_func): New static function. + (obj_init): null_f protected and initialized. + + * lib.h (null_f, ltail, lazy_appendv): Declared. + + * txr.1: Documented. + + * txr.vim: Updated. + 2012-01-09 Kaz Kylheku <kaz@kylheku.com> Non-broken way to achieve intent of previous commit. |