One of the reasons I chose B as the language for the Credence compiler is that it is simple, and I wouldn't have to spend much time on the frontend—lexical analysis and parsing. I wanted to focus most of my time on...
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...
As I mentioned in my Hello, 2025 post, I've picked up work on my B language compiler again, and lately I haven't been able to put it down.
My first post on IRs was quite some time ago, and since then,...
I've been working on a noteworthy amount of language and compiler design for the last couple of years, both professionally and at home. In compiler theory, some of the most useful tools are intermediate languages, intermediate representation (IR)