Age | Commit message (Collapse) | Author | |
---|---|---|---|
2025-02-11 | Rework `$` operator to work like applicative in Haskell | Aryadev Chavali | |
f $ g $ h -> f(g(h)) whereas previous implementation ($ f g h) was h(g(f)). | |||
2025-02-11 | Macro (alist-val) to access the actual value of a key in an alist | Aryadev Chavali | |
2025-02-11 | Implement `$` operator, second class version of the applicative operator | Aryadev Chavali | |
The `$` operator takes a sequence of FORMS and returns a unary function which applies the input through that sequence via the `->>` operator. For example, consider the predicate "not null". `null` is built into Common Lisp but "not null" requires writing a function (lambda (x) (not (null x))). Now, using this operator, you can write ($ not null) which returns the same lambda as above while being more concise. | |||
2025-02-11 | functions -> forms in lib.macros | Aryadev Chavali | |
2025-02-11 | Add type alias for function and macro for defining functions with type specifier | Aryadev Chavali | |
`fn' is a convenience macro for defining functions with a type specifier. Only really matters for `sbcl` and other hard-optimising Lisp interpreters which actually take these seriously. | |||
2025-02-11 | Implement a `while' macro. | Aryadev Chavali | |
2025-02-11 | Implement threading macros and make package lib.macros to hold them. | Aryadev Chavali | |