The point of writing this compiler was to understand how a compiler works on every level. From tokenizing to emitting assembly. It took a lot of iterations and hard resets to finally get to a point where I built something remotely scalable.
The compiler is nowhere near finished or in any shape to do anything. I built keeping the "Make First, Perfect Later" mindset and I have gotten to a point where I think I can see a refactor on the horizon.
As I am writing everything, even the part that generates the assembly, so the compiler only supports computers on Apple silicon (technically it can support all ARM processors, but writing assembly on the M-series is slightly different).
Yes I have to use lldb, because I also need to implement a print function from scratch.
- Declare and define variable (they have to be done seperately).




- Do basic arithmetic, addition and subtraction.


- Do long complex arithmetic.


- Can process conditional statements (a > b; etc), but these were planned to be released with if and while statement's implementation, so they have no use right now.