Go to file
2024-09-09 16:04:55 +09:00
lib can eval '`' ',' 2024-09-09 15:29:17 +09:00
.gitignore fix if 2024-09-08 11:52:55 +09:00
bltin.c can eval '`' ',' 2024-09-09 15:29:17 +09:00
dat.h can eval '`' ',' 2024-09-09 15:29:17 +09:00
eval.c define function can't change already exist variable 2024-09-09 16:04:55 +09:00
fn.h can eval '`' ',' 2024-09-09 15:29:17 +09:00
gc.c add static keyword 2024-09-09 00:02:09 +09:00
main.c can eval '`' ',' 2024-09-09 15:29:17 +09:00
makefile add repl.c 2024-09-08 19:55:30 +09:00
obj.c can eval '`' ',' 2024-09-09 15:29:17 +09:00
parser.c fix parse list 2024-09-09 16:04:32 +09:00
README.md fix if 2024-09-08 11:52:55 +09:00
repl.c can eval '`' ',' 2024-09-09 15:29:17 +09:00
str.c rewrite GC 2024-09-04 12:20:58 +09:00

  • (define fac (lambda (n) (if (== n 0) 1 (* n (fac (+ n -1))))))

  • macro

    (macro and (expr . rest)
        (if rest (list 'if expr (cons 'and rest)) expr))

    (and (== 1 1) (== 0 0) (if nil nil 1) (+ 100 100))
    (and ())