summaryrefslogtreecommitdiffstats
path: root/stream.c
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2012-01-10 22:51:14 -0800
committerKaz Kylheku <kaz@kylheku.com>2012-01-10 22:51:14 -0800
commit09c6384d6bb4e3c44bf64299657f492ad4bf756a (patch)
tree46804fac62e964547b877d51f4ad6df2d3217e6e /stream.c
parent9fa74517eb0b8252e88f4c636e6e93bca0c9f0be (diff)
downloadtxr-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 'stream.c')
0 files changed, 0 insertions, 0 deletions