https://github.com/budchirp/graphite
Fast (🚀), Memory safe (🚀), Simple (🚀) language compiler written in C++ (bad 😡) using LLVM (🚀)
https://github.com/budchirp/graphite
compiler cpp llvm llvm-ir
Last synced: 3 days ago
JSON representation
Fast (🚀), Memory safe (🚀), Simple (🚀) language compiler written in C++ (bad 😡) using LLVM (🚀)
- Host: GitHub
- URL: https://github.com/budchirp/graphite
- Owner: budchirp
- License: gpl-3.0
- Created: 2024-12-02T18:02:25.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-09-25T17:57:46.000Z (7 months ago)
- Last Synced: 2025-09-29T23:55:12.668Z (7 months ago)
- Topics: compiler, cpp, llvm, llvm-ir
- Language: C++
- Homepage:
- Size: 1.18 MB
- Stars: 6
- Watchers: 1
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
graphite
Fast (🚀), Memory safe (🚀), Simple (🚀) language compiler written in C++ (bad 😡) using LLVM (🚀)
## TODO
- [x] Lexer
- [x] Parser
- [x] Codegen
- [x] Type support & checking
- [x] Function definition
- [x] Variable definition
- [x] Mutable/Immutable variables
- [x] Null (?, !!, null)
- [x] Binary expressions (=, ==, !=, +, -, /, *)
- [x] Unary expressions (*, &, -, +, ++, --, !)
- [x] If expression
- [x] For & While statement
- [x] Arrays
- [x] Structs (just works nothing else)
- [x] Module management (public, private, include)
- [x] Object generation
- [x] Code optimization (LLVM IR Optimization)
- [x] Inline assembly
- [ ] Better compiler (for module management)
- [ ] Stdlib
- [ ] Maps
- [ ] Scope management and ownership system similar to crab 🦀 (aka crap) or C++ RAII
- [ ] Switch expression
- [ ] CLI (graphite, graphitec)
- [ ] OOP
- [ ] Extern fn and var