1
1
Fork 0
mirror of https://github.com/azur1s/bobbylisp.git synced 2024-10-16 02:37:40 -05:00

Compare commits

...

2 commits

Author SHA1 Message Date
Natapat Samutpong 873241ad94 Update README.md 2022-03-13 13:14:13 +07:00
Natapat Samutpong a7c9ab35e8 box drawing :trollface: 2022-03-13 13:12:44 +07:00

View file

@ -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)
``` ```