diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2021-03-10 08:22:07 -0800 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2021-03-10 08:22:07 -0800 |
commit | 3fad0ffcf2eb07f9f9b6aba904d1ed83a35be60f (patch) | |
tree | d6d9dd0fe289913f7a4378e0566ad1f8393dab8c | |
parent | 7d3e7d02f89b0335e0661b00866a4dfc5547841c (diff) | |
download | txr-3fad0ffcf2eb07f9f9b6aba904d1ed83a35be60f.tar.gz txr-3fad0ffcf2eb07f9f9b6aba904d1ed83a35be60f.tar.bz2 txr-3fad0ffcf2eb07f9f9b6aba904d1ed83a35be60f.zip |
compiler: more const-foldable functions.
* share/txr/stdlib/compiler.tl (%const-foldable-funs%): Add
rest, nilf, tf, join, join-with, empty.
-rw-r--r-- | share/txr/stdlib/compiler.tl | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/share/txr/stdlib/compiler.tl b/share/txr/stdlib/compiler.tl index 890e1a8a..a567eaa9 100644 --- a/share/txr/stdlib/compiler.tl +++ b/share/txr/stdlib/compiler.tl @@ -285,14 +285,15 @@ caadaar caadadr caaddar caadddr cadaaar cadaadr cadadar cadaddr caddaar caddadr cadddar caddddr cdaaaar cdaaadr cdaadar cdaaddr cdadaar cdadadr cdaddar cdadddr cddaaar cddaadr cddadar cddaddr cdddaar cdddadr cddddar - cdddddr cons sub-list identity typeof atom null false true have - consp listp endp proper-listp length-list first second third fourth fifth + cdddddr cons first rest sub-list identity typeof atom null false true have + consp listp endp proper-listp length-list second third fourth fifth sixth seventh eighth ninth tenth conses ldiff nthcdr nth tailp memq memql memqual rmemq rmemql rmemqual countq countql countqual posq posql posqual rposq rposql rposqual eq eql equal meq meql mequal neq neql nequal max min clamp bracket take drop uniq if or and progn - prog1 prog2 tostring tostringp display-width sys:fmt-simple sys:fmt-flex - sys:fmt-join packagep symbolp keywordp bindable stringp length-str + prog1 prog2 nilf tf tostring tostringp display-width sys:fmt-simple + sys:fmt-flex join join-with sys:fmt-join packagep + symbolp keywordp bindable stringp length-str coded-length cmp-str string-lt str= str< str> str<= str>= int-str flo-str num-str int-flo flo-int tofloat toint tointz less greater lequal gequal chrp chr-isalnum chr-isalnum chr-isalpha chr-isascii @@ -300,8 +301,8 @@ chr-ispunct chr-isspace chr-isblank chr-isunisp chr-isupper chr-isxdigit chr-xdigit chr-toupper chr-tolower num-chr int-chr chr-num chr-int chr-str span-str compl-span-str break-str vectorp length-vec size-vec - assq assql assoc rassq rassql rassoc prop memp length len ref rangep - from to in-range in-range* nullify)) + assq assql assoc rassq rassql rassoc prop memp length len empty ref + rangep from to in-range in-range* nullify)) (defvarl %const-foldable% (hash-list %const-foldable-funs% :eq-based)) |