The year of the chip!
It's March, and I've already started three embedded systems projects and completed two. Let's talk about them! The most recent, Lionheart, is an assembler for the Motorola MC6800. It was an idea I worked on about 7 years ago...
It's March, and I've already started three embedded systems projects and completed two. Let's talk about them! The most recent, Lionheart, is an assembler for the Motorola MC6800. It was an idea I worked on about 7 years ago...
Credence is done. The ARM64 engineering has been both incredible and exhausting, but it's the last backend I planned to support. The work on x86-64 and ARM64 together has been remarkable to say the least: It is my Magnum Opus That's...
A few weeks after the first type-checking post, I was satisfied with the object table and type checker. So I started engineering the backend - I chose x86-64 as the first platform for code generation. I've made a lot of headway, but one...
Update: December 19th, 2025 Since I wrote this post, type checking in Credence has changed. Originally, I talked about how neat it was that I "accidentally" got a type system. Today, the Type Checker is more discrete and separate from the Table and...
Oh boy, these last few weeks working on Credence have been tough. Recall that in my previous post, I spoke about breaking down the AST into a queue of operators and operands. This algorithm has a name, the Shunting Yard algorithm, similar to a shunting...