1
1
Fork 0
mirror of https://github.com/azur1s/bobbylisp.git synced 2024-09-28 09:27:35 +00:00
bobbylisp/README.md

31 lines
567 B
Markdown
Raw Normal View History

2022-01-21 23:43:50 +00:00
# vl
another lisp dialect
```lisp
(fun factorial [x]
(if (<= x 1)
1
(* x (factorial (- x 1)))))
(def times 7)
(do
(print (factorial times)))
```
2022-01-23 21:42:08 +00:00
Compliation flow:
```
Input(file) -> Lexer -> Parser -> Interpret
String Token Expr IO
|-> Compile(TODO)
File
```
2022-01-21 23:43:50 +00:00
Progress:
- [X] Lexer & Parser
2022-01-22 21:36:13 +00:00
- [ ] Syntax checker & Type checker
2022-01-23 21:42:08 +00:00
- [X] Interpreter
2022-01-22 21:36:13 +00:00
- [ ] Compiler
Problems:
2022-01-23 21:42:08 +00:00
- Parser only detect the first error.
2022-01-22 21:36:13 +00:00
- Parser can't detect `(()))` syntax error.