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

Compare commits

..

No commits in common. "873241ad94bbaf7374d1c0a3d73ea6c5c945c885" and "fc4756d384b47dbc6f36d9556bd5718f63be9eea" have entirely different histories.

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 Pass Fail -> Print error -> Exit
|
v
Lowerer(?) produce HIR Lowerer(?) produce HIR
crates/hir | crates/hir
v
Diagnostic(Lowering) Diagnostic(Lowering)
│ │ crates/diagnostic | \ crates/diagnostic
│ ╰ Fail -> Print error -> Exit v \
Pass Pass Fail -> Print error -> Exit
|
v
Command Codegen produce C++ Command Codegen produce C++
(spawn) crates/codegen (spawn) | crates/codegen
│ │ | |
│ │ v v
clang++ ─────┴───── Executable clang++ -----*-----> Executable
(Command) (Command)
``` ```