&cuik Been making changes to the CLI, also the spinning triangle is doing as spinning triangles do... that's right, compile correctly
warning: unfinished
The plan is a modern C11 compiler which can mostly work with Clang, GCC, and MSVC while also introducing some new ideas.
Mac & Linux aren't ready yet but i'll be moving forward to those platforms in the upcoming months
You'll need MSVC installed on windows (i use link.exe for now... sorry, i'll write a linker soon enough)
Just take a C compiler and compile the compile.c
file and run it, if you want an optimized build add RELEASE_BUILD
as a preprocessor define with -D
or /D
. Then you should have a cuik executable in your build/
directory, you can add that directory to your path if you want.
mostly aight, thanks for asking.
One of my favorite new features are the live compiler (essentially an offline Godbolt but within a terminal) and the out of order declarations.
I'll be starting with x64 but I plan on having Aarch64 support soon enough, it's mostly a matter of user-demand what other platforms I add though I probably won't be supporting anything with a segmented address space because I don't want to implement it.
Ideally the essentials like Windows, Linux and MacOS but currently MacOS isn't setup and Linux has basic support (no live compiler)
It will eventually have a smart but non-aggressive optimizer but that's still a work in progress
I'll be supporting all the normal extensions such as:
And some possibly novel extensions such as:
It can currently compile programs using the subset of C it currently supports but it's still missing some essential details before it compiles any basic C program such as:
You can follow my development here
If you're wondering about the tinybackend static library, it's essentially a project of mine that's not ready for everyone's precious eyes so i've been sharing it just enough to actually let people play with the compiler but not play with the backend (it'll be open source eventually).
&cuik Been making changes to the CLI, also the spinning triangle is doing as spinning triangles do... that's right, compile correctly
Getting closer to having parsed & type checked my entire compiler with itself 🥳, ignore the .cpp file, it won't be doing that one, instead i'll probably convert it to valid C file &cuik