diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2015-01-21 10:15:07 -0800 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2015-01-21 10:15:07 -0800 |
commit | 47833d3b34633299a1afd778e658bc77f146a03c (patch) | |
tree | 4b6b76094ae546b24e3f0acbb495b3d7c9f46b7c /tl.vim | |
parent | aa355befc89d94f3f43d3ae4124f7d048fb4e588 (diff) | |
download | txr-47833d3b34633299a1afd778e658bc77f146a03c.tar.gz txr-47833d3b34633299a1afd778e658bc77f146a03c.tar.bz2 txr-47833d3b34633299a1afd778e658bc77f146a03c.zip |
Basic implementation of constantp. Does not
recognize forms like (+ 2 2) as constant.
* eval.c (constantp_noex, constantp): New functions.
(eval_init): Registered constantp as intrinsic.
* tl.vim, txr.vim: Updated.
* txr.1: Documented constantp.
Diffstat (limited to 'tl.vim')
-rw-r--r-- | tl.vim | 284 |
1 files changed, 142 insertions, 142 deletions
@@ -47,148 +47,148 @@ syn keyword txl_keyword contained chr-str-set chr-tolower chr-toupper chrp syn keyword txl_keyword contained close-stream closelog cmp-str collect-each syn keyword txl_keyword contained collect-each* comb compl-span-str cond syn keyword txl_keyword contained cons conses conses* consp -syn keyword txl_keyword contained copy copy-alist copy-cons copy-hash -syn keyword txl_keyword contained copy-list copy-str copy-vec cos -syn keyword txl_keyword contained count-if countq countql countqual -syn keyword txl_keyword contained cum-norm-dist daemon dec defmacro -syn keyword txl_keyword contained defsymacro defun defvar del -syn keyword txl_keyword contained delay delete-package do dohash -syn keyword txl_keyword contained downcase-str dwim each each* -syn keyword txl_keyword contained empty env env-fbind env-hash -syn keyword txl_keyword contained env-vbind eq eql equal -syn keyword txl_keyword contained errno error eval evenp -syn keyword txl_keyword contained exit exp expt exptmod -syn keyword txl_keyword contained false fbind fboundp fifth -syn keyword txl_keyword contained filter-equal filter-string-tree finalize find -syn keyword txl_keyword contained find-if find-max find-min find-package -syn keyword txl_keyword contained first fixnump flatten flatten* -syn keyword txl_keyword contained flet flip flo-int flo-str -syn keyword txl_keyword contained floatp floor flush-stream for -syn keyword txl_keyword contained for* force format fourth -syn keyword txl_keyword contained fun func-get-env func-get-form func-set-env -syn keyword txl_keyword contained functionp gcd gen generate -syn keyword txl_keyword contained gensym gequal get-byte get-char -syn keyword txl_keyword contained get-hash-userdata get-line get-lines get-list-from-stream -syn keyword txl_keyword contained get-sig-handler get-string get-string-from-stream gethash -syn keyword txl_keyword contained getitimer getpid getppid giterate -syn keyword txl_keyword contained glob glob-altdirfunc glob-brace glob-err -syn keyword txl_keyword contained glob-mark glob-nocheck glob-noescape glob-nomagic -syn keyword txl_keyword contained glob-nosort glob-onlydir glob-period glob-tilde -syn keyword txl_keyword contained glob-tilde-check greater group-by gun -syn keyword txl_keyword contained hash hash-alist hash-construct hash-count -syn keyword txl_keyword contained hash-diff hash-eql hash-equal hash-isec -syn keyword txl_keyword contained hash-keys hash-pairs hash-uni hash-update -syn keyword txl_keyword contained hash-update-1 hash-values hashp html-decode -syn keyword txl_keyword contained html-encode iapply identity ido -syn keyword txl_keyword contained if iff iffi in -syn keyword txl_keyword contained inc inhash int-flo int-str -syn keyword txl_keyword contained integerp intern interp-fun-p interpose -syn keyword txl_keyword contained ip ipf isqrt itimer-prov -syn keyword txl_keyword contained itimer-real itimer-virtual juxt keep-if -syn keyword txl_keyword contained keep-if* keywordp kill labels -syn keyword txl_keyword contained lambda last lazy-str lazy-str-force -syn keyword txl_keyword contained lazy-str-force-upto lazy-str-get-trailing-list lazy-stream-cons lazy-stringp -syn keyword txl_keyword contained lbind lcm lcons-fun lconsp -syn keyword txl_keyword contained ldiff length length-list length-str -syn keyword txl_keyword contained length-str-< length-str-<= length-str-> length-str->= -syn keyword txl_keyword contained length-vec lequal less let -syn keyword txl_keyword contained let* lexical-fun-p lexical-var-p link -syn keyword txl_keyword contained lisp-parse list list* list-str -syn keyword txl_keyword contained list-vector listp log log-alert -syn keyword txl_keyword contained log-auth log-authpriv log-cons log-crit -syn keyword txl_keyword contained log-daemon log-debug log-emerg log-err -syn keyword txl_keyword contained log-info log-ndelay log-notice log-nowait -syn keyword txl_keyword contained log-odelay log-perror log-pid log-user -syn keyword txl_keyword contained log-warning log10 log2 logand -syn keyword txl_keyword contained logior lognot logtest logtrunc -syn keyword txl_keyword contained logxor macro-form-p macro-time macroexpand -syn keyword txl_keyword contained macroexpand-1 macrolet major make-catenated-stream -syn keyword txl_keyword contained make-env make-hash make-lazy-cons make-like -syn keyword txl_keyword contained make-package make-random-state make-similar-hash make-string-byte-input-stream -syn keyword txl_keyword contained make-string-input-stream make-string-output-stream make-strlist-output-stream make-sym -syn keyword txl_keyword contained make-time make-time-utc make-trie makedev -syn keyword txl_keyword contained mapcar mapcar* mapdo maphash -syn keyword txl_keyword contained mappend mappend* mask match-fun -syn keyword txl_keyword contained match-regex match-regex-right match-str match-str-tree -syn keyword txl_keyword contained max member member-if memq -syn keyword txl_keyword contained memql memqual merge min -syn keyword txl_keyword contained minor minusp mkdir mknod -syn keyword txl_keyword contained mkstring mod multi multi-sort -syn keyword txl_keyword contained n-choose-k n-perm-k nconc nilf -syn keyword txl_keyword contained none not notf nreverse -syn keyword txl_keyword contained null nullify num-chr num-str -syn keyword txl_keyword contained numberp oand oddp op -syn keyword txl_keyword contained open-command open-directory open-file open-files -syn keyword txl_keyword contained open-files* open-pipe open-process open-tail -syn keyword txl_keyword contained openlog opip or orf -syn keyword txl_keyword contained packagep partition partition* partition-by -syn keyword txl_keyword contained perm plusp pop pos -syn keyword txl_keyword contained pos-if pos-max pos-min posq -syn keyword txl_keyword contained posql posqual pppred ppred -syn keyword txl_keyword contained pprinl pprint pprof pred -syn keyword txl_keyword contained prinl print prof prog1 -syn keyword txl_keyword contained progn prop proper-listp push -syn keyword txl_keyword contained pushhash put-byte put-char put-line -syn keyword txl_keyword contained put-lines put-string put-strings pwd -syn keyword txl_keyword contained qquote quasi quasilist quote -syn keyword txl_keyword contained rand random random-fixnum random-state-p -syn keyword txl_keyword contained range range* range-regex rcomb -syn keyword txl_keyword contained read readlink real-time-stream-p reduce-left -syn keyword txl_keyword contained reduce-right ref refset regex-compile -syn keyword txl_keyword contained regex-parse regexp regsub rehome-sym -syn keyword txl_keyword contained remhash remove-if remove-if* remove-path -syn keyword txl_keyword contained remq remq* remql remql* -syn keyword txl_keyword contained remqual remqual* rename-path repeat -syn keyword txl_keyword contained replace replace-list replace-str replace-vec -syn keyword txl_keyword contained rest ret retf return -syn keyword txl_keyword contained return-from reverse rlcp rperm -syn keyword txl_keyword contained rplaca rplacd run s-ifblk -syn keyword txl_keyword contained s-ifchr s-ifdir s-ififo s-iflnk -syn keyword txl_keyword contained s-ifmt s-ifreg s-ifsock s-irgrp -syn keyword txl_keyword contained s-iroth s-irusr s-irwxg s-irwxo -syn keyword txl_keyword contained s-irwxu s-isgid s-isuid s-isvtx -syn keyword txl_keyword contained s-iwgrp s-iwoth s-iwusr s-ixgrp -syn keyword txl_keyword contained s-ixoth s-ixusr search search-regex -syn keyword txl_keyword contained search-str search-str-tree second seek-stream -syn keyword txl_keyword contained select seqp set set-diff -syn keyword txl_keyword contained set-hash-userdata set-sig-handler sethash setitimer -syn keyword txl_keyword contained setlogmask sh sig-abrt sig-alrm -syn keyword txl_keyword contained sig-bus sig-check sig-chld sig-cont -syn keyword txl_keyword contained sig-fpe sig-hup sig-ill sig-int -syn keyword txl_keyword contained sig-io sig-iot sig-kill sig-lost -syn keyword txl_keyword contained sig-pipe sig-poll sig-prof sig-pwr -syn keyword txl_keyword contained sig-quit sig-segv sig-stkflt sig-stop -syn keyword txl_keyword contained sig-sys sig-term sig-trap sig-tstp -syn keyword txl_keyword contained sig-ttin sig-ttou sig-urg sig-usr1 -syn keyword txl_keyword contained sig-usr2 sig-vtalrm sig-winch sig-xcpu -syn keyword txl_keyword contained sig-xfsz sin sixth size-vec -syn keyword txl_keyword contained some sort sort-group source-loc -syn keyword txl_keyword contained source-loc-str span-str splice split-str -syn keyword txl_keyword contained split-str-set sqrt sssucc ssucc -syn keyword txl_keyword contained stat stdlib str< str<= -syn keyword txl_keyword contained str= str> str>= stream-get-prop -syn keyword txl_keyword contained stream-set-prop streamp string-extend string-lt -syn keyword txl_keyword contained stringp sub sub-list sub-str -syn keyword txl_keyword contained sub-vec succ symacrolet symbol-function -syn keyword txl_keyword contained symbol-name symbol-package symbol-value symbolp -syn keyword txl_keyword contained symlink sys-qquote sys-splice sys-unquote -syn keyword txl_keyword contained syslog tan tb tc -syn keyword txl_keyword contained tf third throw throwf -syn keyword txl_keyword contained time time-fields-local time-fields-utc time-string-local -syn keyword txl_keyword contained time-string-utc time-usec tofloat toint -syn keyword txl_keyword contained tok-str tok-where tostring tostringp -syn keyword txl_keyword contained transpose tree-bind tree-case tree-find -syn keyword txl_keyword contained trie-add trie-compress trie-lookup-begin trie-lookup-feed-char -syn keyword txl_keyword contained trie-value-at trim-str true trunc -syn keyword txl_keyword contained tuples txr-case txr-if txr-when -syn keyword txl_keyword contained typeof unget-byte unget-char uniq -syn keyword txl_keyword contained unique unless unquote until -syn keyword txl_keyword contained upcase-str update url-decode url-encode -syn keyword txl_keyword contained usleep uw-protect vec vec-push -syn keyword txl_keyword contained vec-set-length vecref vector vector-list -syn keyword txl_keyword contained vectorp when where while -syn keyword txl_keyword contained with-saved-vars wrap wrap* zerop -syn keyword txl_keyword contained zip +syn keyword txl_keyword contained constantp copy copy-alist copy-cons +syn keyword txl_keyword contained copy-hash copy-list copy-str copy-vec +syn keyword txl_keyword contained cos count-if countq countql +syn keyword txl_keyword contained countqual cum-norm-dist daemon dec +syn keyword txl_keyword contained defmacro defsymacro defun defvar +syn keyword txl_keyword contained del delay delete-package do +syn keyword txl_keyword contained dohash downcase-str dwim each +syn keyword txl_keyword contained each* empty env env-fbind +syn keyword txl_keyword contained env-hash env-vbind eq eql +syn keyword txl_keyword contained equal errno error eval +syn keyword txl_keyword contained evenp exit exp expt +syn keyword txl_keyword contained exptmod false fbind fboundp +syn keyword txl_keyword contained fifth filter-equal filter-string-tree finalize +syn keyword txl_keyword contained find find-if find-max find-min +syn keyword txl_keyword contained find-package first fixnump flatten +syn keyword txl_keyword contained flatten* flet flip flo-int +syn keyword txl_keyword contained flo-str floatp floor flush-stream +syn keyword txl_keyword contained for for* force format +syn keyword txl_keyword contained fourth fun func-get-env func-get-form +syn keyword txl_keyword contained func-set-env functionp gcd gen +syn keyword txl_keyword contained generate gensym gequal get-byte +syn keyword txl_keyword contained get-char get-hash-userdata get-line get-lines +syn keyword txl_keyword contained get-list-from-stream get-sig-handler get-string get-string-from-stream +syn keyword txl_keyword contained gethash getitimer getpid getppid +syn keyword txl_keyword contained giterate glob glob-altdirfunc glob-brace +syn keyword txl_keyword contained glob-err glob-mark glob-nocheck glob-noescape +syn keyword txl_keyword contained glob-nomagic glob-nosort glob-onlydir glob-period +syn keyword txl_keyword contained glob-tilde glob-tilde-check greater group-by +syn keyword txl_keyword contained gun hash hash-alist hash-construct +syn keyword txl_keyword contained hash-count hash-diff hash-eql hash-equal +syn keyword txl_keyword contained hash-isec hash-keys hash-pairs hash-uni +syn keyword txl_keyword contained hash-update hash-update-1 hash-values hashp +syn keyword txl_keyword contained html-decode html-encode iapply identity +syn keyword txl_keyword contained ido if iff iffi +syn keyword txl_keyword contained in inc inhash int-flo +syn keyword txl_keyword contained int-str integerp intern interp-fun-p +syn keyword txl_keyword contained interpose ip ipf isqrt +syn keyword txl_keyword contained itimer-prov itimer-real itimer-virtual juxt +syn keyword txl_keyword contained keep-if keep-if* keywordp kill +syn keyword txl_keyword contained labels lambda last lazy-str +syn keyword txl_keyword contained lazy-str-force lazy-str-force-upto lazy-str-get-trailing-list lazy-stream-cons +syn keyword txl_keyword contained lazy-stringp lbind lcm lcons-fun +syn keyword txl_keyword contained lconsp ldiff length length-list +syn keyword txl_keyword contained length-str length-str-< length-str-<= length-str-> +syn keyword txl_keyword contained length-str->= length-vec lequal less +syn keyword txl_keyword contained let let* lexical-fun-p lexical-var-p +syn keyword txl_keyword contained link lisp-parse list list* +syn keyword txl_keyword contained list-str list-vector listp log +syn keyword txl_keyword contained log-alert log-auth log-authpriv log-cons +syn keyword txl_keyword contained log-crit log-daemon log-debug log-emerg +syn keyword txl_keyword contained log-err log-info log-ndelay log-notice +syn keyword txl_keyword contained log-nowait log-odelay log-perror log-pid +syn keyword txl_keyword contained log-user log-warning log10 log2 +syn keyword txl_keyword contained logand logior lognot logtest +syn keyword txl_keyword contained logtrunc logxor macro-form-p macro-time +syn keyword txl_keyword contained macroexpand macroexpand-1 macrolet major +syn keyword txl_keyword contained make-catenated-stream make-env make-hash make-lazy-cons +syn keyword txl_keyword contained make-like make-package make-random-state make-similar-hash +syn keyword txl_keyword contained make-string-byte-input-stream make-string-input-stream make-string-output-stream make-strlist-output-stream +syn keyword txl_keyword contained make-sym make-time make-time-utc make-trie +syn keyword txl_keyword contained makedev mapcar mapcar* mapdo +syn keyword txl_keyword contained maphash mappend mappend* mask +syn keyword txl_keyword contained match-fun match-regex match-regex-right match-str +syn keyword txl_keyword contained match-str-tree max member member-if +syn keyword txl_keyword contained memq memql memqual merge +syn keyword txl_keyword contained min minor minusp mkdir +syn keyword txl_keyword contained mknod mkstring mod multi +syn keyword txl_keyword contained multi-sort n-choose-k n-perm-k nconc +syn keyword txl_keyword contained nilf none not notf +syn keyword txl_keyword contained nreverse null nullify num-chr +syn keyword txl_keyword contained num-str numberp oand oddp +syn keyword txl_keyword contained op open-command open-directory open-file +syn keyword txl_keyword contained open-files open-files* open-pipe open-process +syn keyword txl_keyword contained open-tail openlog opip or +syn keyword txl_keyword contained orf packagep partition partition* +syn keyword txl_keyword contained partition-by perm plusp pop +syn keyword txl_keyword contained pos pos-if pos-max pos-min +syn keyword txl_keyword contained posq posql posqual pppred +syn keyword txl_keyword contained ppred pprinl pprint pprof +syn keyword txl_keyword contained pred prinl print prof +syn keyword txl_keyword contained prog1 progn prop proper-listp +syn keyword txl_keyword contained push pushhash put-byte put-char +syn keyword txl_keyword contained put-line put-lines put-string put-strings +syn keyword txl_keyword contained pwd qquote quasi quasilist +syn keyword txl_keyword contained quote rand random random-fixnum +syn keyword txl_keyword contained random-state-p range range* range-regex +syn keyword txl_keyword contained rcomb read readlink real-time-stream-p +syn keyword txl_keyword contained reduce-left reduce-right ref refset +syn keyword txl_keyword contained regex-compile regex-parse regexp regsub +syn keyword txl_keyword contained rehome-sym remhash remove-if remove-if* +syn keyword txl_keyword contained remove-path remq remq* remql +syn keyword txl_keyword contained remql* remqual remqual* rename-path +syn keyword txl_keyword contained repeat replace replace-list replace-str +syn keyword txl_keyword contained replace-vec rest ret retf +syn keyword txl_keyword contained return return-from reverse rlcp +syn keyword txl_keyword contained rperm rplaca rplacd run +syn keyword txl_keyword contained s-ifblk s-ifchr s-ifdir s-ififo +syn keyword txl_keyword contained s-iflnk s-ifmt s-ifreg s-ifsock +syn keyword txl_keyword contained s-irgrp s-iroth s-irusr s-irwxg +syn keyword txl_keyword contained s-irwxo s-irwxu s-isgid s-isuid +syn keyword txl_keyword contained s-isvtx s-iwgrp s-iwoth s-iwusr +syn keyword txl_keyword contained s-ixgrp s-ixoth s-ixusr search +syn keyword txl_keyword contained search-regex search-str search-str-tree second +syn keyword txl_keyword contained seek-stream select seqp set +syn keyword txl_keyword contained set-diff set-hash-userdata set-sig-handler sethash +syn keyword txl_keyword contained setitimer setlogmask sh sig-abrt +syn keyword txl_keyword contained sig-alrm sig-bus sig-check sig-chld +syn keyword txl_keyword contained sig-cont sig-fpe sig-hup sig-ill +syn keyword txl_keyword contained sig-int sig-io sig-iot sig-kill +syn keyword txl_keyword contained sig-lost sig-pipe sig-poll sig-prof +syn keyword txl_keyword contained sig-pwr sig-quit sig-segv sig-stkflt +syn keyword txl_keyword contained sig-stop sig-sys sig-term sig-trap +syn keyword txl_keyword contained sig-tstp sig-ttin sig-ttou sig-urg +syn keyword txl_keyword contained sig-usr1 sig-usr2 sig-vtalrm sig-winch +syn keyword txl_keyword contained sig-xcpu sig-xfsz sin sixth +syn keyword txl_keyword contained size-vec some sort sort-group +syn keyword txl_keyword contained source-loc source-loc-str span-str splice +syn keyword txl_keyword contained split-str split-str-set sqrt sssucc +syn keyword txl_keyword contained ssucc stat stdlib str< +syn keyword txl_keyword contained str<= str= str> str>= +syn keyword txl_keyword contained stream-get-prop stream-set-prop streamp string-extend +syn keyword txl_keyword contained string-lt stringp sub sub-list +syn keyword txl_keyword contained sub-str sub-vec succ symacrolet +syn keyword txl_keyword contained symbol-function symbol-name symbol-package symbol-value +syn keyword txl_keyword contained symbolp symlink sys-qquote sys-splice +syn keyword txl_keyword contained sys-unquote syslog tan tb +syn keyword txl_keyword contained tc tf third throw +syn keyword txl_keyword contained throwf time time-fields-local time-fields-utc +syn keyword txl_keyword contained time-string-local time-string-utc time-usec tofloat +syn keyword txl_keyword contained toint tok-str tok-where tostring +syn keyword txl_keyword contained tostringp transpose tree-bind tree-case +syn keyword txl_keyword contained tree-find trie-add trie-compress trie-lookup-begin +syn keyword txl_keyword contained trie-lookup-feed-char trie-value-at trim-str true +syn keyword txl_keyword contained trunc tuples txr-case txr-if +syn keyword txl_keyword contained txr-when typeof unget-byte unget-char +syn keyword txl_keyword contained uniq unique unless unquote +syn keyword txl_keyword contained until upcase-str update url-decode +syn keyword txl_keyword contained url-encode usleep uw-protect vec +syn keyword txl_keyword contained vec-push vec-set-length vecref vector +syn keyword txl_keyword contained vector-list vectorp when where +syn keyword txl_keyword contained while with-saved-vars wrap wrap* +syn keyword txl_keyword contained zerop zip syn match txr_metanum "@[0-9]\+" syn match txr_nested_error "[^\t `]\+" contained |