summaryrefslogtreecommitdiffstats
path: root/txr.vim
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 /txr.vim
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 'txr.vim')
-rw-r--r--txr.vim7
1 files changed, 5 insertions, 2 deletions
diff --git a/txr.vim b/txr.vim
index fe9f7f7c..90a12203 100644
--- a/txr.vim
+++ b/txr.vim
@@ -25,16 +25,17 @@ syn keyword txr_keyword contained repeat rep first last single empty mod modlast
syn keyword txr_keyword contained define try catch finally throw
syn keyword txr_keyword contained defex throw deffilter filter eof eol do
-syn keyword txl_keyword contained progn let syn let* lambda call fun
+syn keyword txl_keyword contained progn prog1 let syn let* lambda call fun
syn keyword txl_keyword contained cond if and or
syn keyword txl_keyword contained defvar defun inc dec set push pop flip
syn keyword txl_keyword contained for for* dohash unwind-protect block
-syn keyword txl_keyword contained return return-from
+syn keyword txl_keyword contained return return-from gen delay
syn keyword txl_keyword contained cons make-lazy-cons lcons-fun car cdr
syn keyword txl_keyword contained rplaca rplacd first rest append list
syn keyword txl_keyword contained identity typeof atom null not consp listp
syn keyword txl_keyword contained proper-listp length-list mapcar mappend apply
+syn keyword txl_keyword contained mapcar* mappend*
syn keyword txl_keyword contained reduce-left reduce-right
syn keyword txl_keyword contained second third fourth fifth sixth copy-list nreverse
syn keyword txl_keyword contained reverse ldiff flatten lazy-flatten
@@ -76,6 +77,8 @@ syn keyword txl_keyword contained functionp interp-fun-p *random-state*
syn keyword txl_keyword contained make-random-state random-state-p
syn keyword txl_keyword contained random-fixnum random
+syn keyword txl_keyword contained range generate repeat force
+
syn match txr_hash "#" contained
syn match txr_quote "[,']" contained