oolisp

Crates.iooolisp
lib.rsoolisp
version0.1.9
sourcesrc
created_at2022-06-03 11:09:08.204515
updated_at2022-06-03 11:09:08.204515
descriptionLISP based on Daniel Holden's Book, compiles to web assembly
homepage
repository
max_upload_size
id599235
size115,766
HG King (hgm-king)

documentation

README

Oolisp

Web-based LISP interpreter

About

Syntax & Types:
number:
  • Numbers like we are all familiar with. (ie. 1, 1.1, 1.1e+13, 1.1e-13)
symbol:
  • Symbols are names that can be assigned to any value. (ie. add, def, fun, some-var)
  • usage: def {symbol-name} value
string:
  • Strings are characters delimited by double quotes. (ie. "c'ect ci nest pa un pipe?", "hg king")
s-expression:
  • S-Expressions are used to call and evaluate functions. (ie. (+ 1 2 3), (- (+ 9 1) (* 5 2)), (list 1 2 3 4), (== {} {}))
  • usage: (function arg0 arg1 arg2)
q-expression:
  • Q-Expressions are lists of values, remains unevaluated. (ie. {1 1 1 1}, {+ 9 (== {} {})}) usage: {elem0 elem1 elem2}
lambda:
  • Lambda functions are how you build functions, can be partially applied. (ie. (\ {a b} {+ a b})) usage: (\ {arg-list} {body})

Strongly influenced by

Commit count: 0

cargo fmt