Pi-lang
This project started off as a way for me to learn C++. I was bored by all the example projects online, so I decided I would try to make a programming language (because I heard people did those in C++). Originally, it was just a simple interpreted language that looked sort of like Typescript. It wasn't very interesting, but it had variables, functions, and some basic control flow.
Eventually, I decided to take it a step forward and make it compiled. I came across LLVM -- a super incredible project that can handle all the codegen. Using LLVM, I built my first attempt at a compiler. I've been rewriting and rewriting for a long time now trying to land on a version i'm happy with (still not there). Just (very) recently, I started rewriting it in Go .
This whole project ended up leading me down the rabbit whole of lower level programming. In general, i've become much more interested in the low level aspects of computers and compilers in general, and it' been nice exploring those.