added progn form

This commit is contained in:
Aidan 2020-07-18 10:44:18 -07:00
parent 8278430882
commit 44beab651c
No known key found for this signature in database
GPG key ID: 327711E983899316
3 changed files with 21 additions and 2 deletions

View file

@ -43,10 +43,11 @@ Use the `func` function from the stdlib:
In this case, `(form_to_be_evaluated)` will not be evaluated until the function is called.
### Control flow
See `stdlib/control_flow.go`. We have if and while forms:
See `stdlib/control_flow.go`. We have if, while, and progn forms:
`(if (cond) (then) (else))`
`(when (cond) (form1)....... (formN))`
`(progn (form1)..... (formN))`
If and While should be self explanatory. For those new to LISP, the rough idea of progn is to evaluate a sequence of N forms and return the result of the final one.
We also have functioning implementations of map and reduce in the stdlib (incomplete)
## Comments