||3 years ago|
|src||3 years ago|
|LICENSE||3 years ago|
|README.md||3 years ago|
|Setup.hs||3 years ago|
|cherry-lisp.cabal||3 years ago|
|stack.yaml||3 years ago|
/\ | \ A tiny, curried and lazy Lisp. @ @
Currying consists in convert one function that takes multiple arguments into multiple functions that each take a single argument.
Lazyness is when an expression is only evaluated when is necessary.
- Dynamic typed
- Functional (impure)
- Lazy evaluation
- It's a Lisp
This language is being created for fun.
It takes inspiration of some features of Haskell (like currification and lazy evaluation) and the syntax of Lisp.
A small taste
cherry> (set! x 10) nil cherry> x 10 cherry> (const 3 6) 3 cherry> (set! always-seven (const 7)) nil cherry> (always-seven 1) 7 cherry> (always-seven 8) 7
Download and build instructions
Install the stack build tool. On Debian based systems, run (as root):
# apt install haskell-stack
Clone the repo:
$ git clone https://git.fai.su/Suguivy/cherry-lisp
$ cd cherry-lisp $ stack upgrade $ stack build
Install and execute it:
$ stack install $ cherry
Work in progress...