mirror of
https://github.com/azur1s/bobbylisp.git
synced 2024-10-16 02:37:40 -05:00
567 B
567 B
vl
another lisp dialect
(fun factorial [x]
(if (<= x 1)
1
(* x (factorial (- x 1)))))
(def times 7)
(do
(print (factorial times)))
Compliation flow:
Input(file) -> Lexer -> Parser -> Interpret
String Token Expr IO
|-> Compile(TODO)
File
Progress:
- Lexer & Parser
- Syntax checker & Type checker
- Interpreter
- Compiler
Problems:
- Parser only detect the first error.
- Parser can't detect
(()))
syntax error.