mirror of
https://github.com/azur1s/bobbylisp.git
synced 2024-10-16 02:37:40 -05:00
Compare commits
2 commits
fc4756d384
...
873241ad94
Author | SHA1 | Date | |
---|---|---|---|
Natapat Samutpong | 873241ad94 | ||
Natapat Samutpong | a7c9ab35e8 |
46
README.md
46
README.md
|
@ -20,36 +20,36 @@ end;
|
||||||
Note: Everything in this project can be changed at anytime! (I'm still finding out what work best for lots of thing) if you have an idea, feel free to create an issues about it, or even create a PR! (I'd be very happy)
|
Note: Everything in this project can be changed at anytime! (I'm still finding out what work best for lots of thing) if you have an idea, feel free to create an issues about it, or even create a PR! (I'd be very happy)
|
||||||
|
|
||||||
# How it works
|
# How it works
|
||||||
```sml
|
```
|
||||||
Source (.hz)
|
Source (.hz)
|
||||||
| crates/main
|
│ crates/main
|
||||||
v
|
│
|
||||||
Lexer produce Token
|
Lexer produce Token
|
||||||
| crates/lexer
|
│ crates/lexer
|
||||||
v
|
│
|
||||||
Parser produce AST
|
Parser produce AST
|
||||||
| crates/parser
|
│ crates/parser
|
||||||
v
|
│
|
||||||
Diagnostic(Parsing)
|
Diagnostic(Parsing)
|
||||||
| \ crates/diagnostic
|
│ │ crates/diagnostic
|
||||||
| \
|
│ ╰ Fail -> Print error -> Exit
|
||||||
Pass Fail -> Print error -> Exit
|
Pass
|
||||||
|
|
│
|
||||||
v
|
│
|
||||||
Lowerer(?) produce HIR
|
Lowerer(?) produce HIR
|
||||||
| crates/hir
|
│ crates/hir
|
||||||
v
|
│
|
||||||
Diagnostic(Lowering)
|
Diagnostic(Lowering)
|
||||||
| \ crates/diagnostic
|
│ │ crates/diagnostic
|
||||||
v \
|
│ ╰ Fail -> Print error -> Exit
|
||||||
Pass Fail -> Print error -> Exit
|
Pass
|
||||||
|
|
│
|
||||||
v
|
│
|
||||||
Command Codegen produce C++
|
Command Codegen produce C++
|
||||||
(spawn) | crates/codegen
|
(spawn) │ crates/codegen
|
||||||
| |
|
│ │
|
||||||
v v
|
│ │
|
||||||
clang++ -----*-----> Executable
|
clang++ ─────┴───── Executable
|
||||||
(Command)
|
(Command)
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue