I left Zig for developing my own programing language. I chose QBE instead of LLVM
I used Zig in many scenarios. My programing langunage(AzLang) is Zig transpiler.
Why did I choose Zig?
Because it's very portable on both Windows and Linux. On Windows, you don't need to install any additional dependencies. everything is included. I also wrote a simple installer for Zig.
Everything was going well . But what was the problem?
the problem was Zig's decisions. Zig releases new versions very frequently, and code written older versions often doesn't work well anymore. I love Zig. But I don't like transpiling one language into another. nim programing language does this as well. Is this bad idea? No. I just don't want to depend another programing language for codegen.
then i looked at lua programing language and got inspired. Lua is a great language. It's super lightweight programing language. That's wen I decided to use QBE instead of LLVM.
Yeah yeah you can say LLVM is much faster and better than QBE. LLVM has aggresive optimizations such as lto, simd and many others.
But let me explain.
I don't need fastest language. I need the lightest one.
Fast compilation,Hot reloading, Highly embeddable.
Sure I could generate assembly directly. But If I wrote my own assembly assembly codegen, it probably woudn't be as good as QBE or LLVM .
And now... I'm writing my compiler again 😅.


