nowfound

Dev tools · alternatives · 2026

24 alternatives to Self Hosting C Compiler

This is my hobby C compiler project. Decided to publish the code today, as it finally compiled itself. The readme on the linked GitHub page has a bit of information on how it works. I wrote the thing for fun, but if anyone gets a better understanding of the dark corners of C because of it, I am happy.

Below are 24 products that do a similar job, ranked by how close each is in meaning and then by launch-day votes. Self Hosting C Compiler launched in 2022; newer entries below may have overtaken it.

  1. 1

    One of the most challenging projects of my life :)

    2024 · github.com · its alternatives →

  2. 2GI

    Hi all! I'm going into my freshman year, and figured that the best way to prepare for the intro to programming Racket course would be to implement my own garbage-collected, dynamically typed, functional programming language in C ;) Anyways... here's the repo: https://github.com/liam-ilan/crumb I started learning C over the summer, so I still have a whole lot to learn... Any feedback would be greatly appreciated! :D

    2023 · its alternatives →

  3. 3

    A fun toy memory allocator (not thread safe, that's a future TODO). I also wanted to explain how I approached it, so I also wrote a tutorial blog post (~20 minute read) covering the code which you can find the link to in the README.

    Nov 2025 · github.com · its alternatives →

  4. 4

    rcor C compiler (under development). Contribute to rcorcs/rcc development by creating an account on GitHub.

    2016 · github.com · its alternatives →

  5. 5

    Programming language that compiles into a x86 ELF executable. - riicchhaarrd/ocean

    2021 · github.com · its alternatives →

  6. 6

    Hi! I've been working on the flipjump project, a programming language with 1 opcode: flip (invert) a bit, then jump (unconditionally). So a bit-flip followed by more bit-flips. It's effectively a bunch of NOT gates. This language, as poor as it sounds, is RICH. Today I completed my compiler from C to FlipJump. It takes C files, and compiles them into flipjump. I finished testing it all today, and it works! My key interest in this project is to stretch what we know of computing and to prove that anything can be done even with minimal power. I appreciate you reading my announcement, and be…

    2025 · github.com · its alternatives →

  7. 7LC

    I made a simple virtual machine that runs C in the browser.This project is made as an experiment to see if C can be learned easier if the lower level is covered in paralel. Sandbox: https://vasyop.github.io/miniC-hosting Tutorial part 1: https://vasyop.github.io/miniC-hosting/?0 More info: https://github.com/vasyop/miniC-hosting/blob/master/README.md Please support this project: https://github.com/vasyop/miniC-hosting/blob/master/support.md

    2019 · its alternatives →

  8. 8

    Repo: https://github.com/valdanylchuk/xcc700 Hi Everyone! I just wrote my first compiler! - single pass, recursive descent, direct emission - generates REL ELF binaries, runnable using ESP-IDF elf_loader - very basic features only, just enough for self-hosting - treats the Xtensa CPU as a stack machine for simplicity, no register allocation / window usage - compilable on Mac, probably also Linux, can cross-compile for esp32 there - wrote for fun / cyberdeck project Sample output from esp32: xcc700.elf xcc700.c -o /d/cc.elf [ xcc700 ] BUILD COMPLETED >…

    Dec 2025 · github.com · its alternatives →

  9. 9CO

    First tutorial to date. Writing your first C program, includes a link at the bottom with a detailed look at printf() as optional reading. I would love some feedback, as I intend writing up a lot of dev articles for people to learn from : www.xanthu.com/first-c-program

    2013 · its alternatives →

  10. 10

    Write your own compiler: introduction. Code genetation. AST. Abstract syntax tree. lisp. javascript.

    2017 · blog.klipse.tech · its alternatives →

  11. 11

    A simple way to write standalone C programs for i386 - luke8086/boot2c

    2019 · github.com · its alternatives →

  12. 12

    Long-simmering side project that is finally ready to see the light. HAMTs are a cool persistent data structure and implementing one has been a lot of fun. Beyond the code, there is likely some value in the extensive and largely complete implementation docs; basic benchmarks are linked in the README, too. Kind of aiming to be "the libavl for HAMTs". That is obviously a high and aspirational bar but a distinct possibility if it stirs up a little interest and/or contribution. Anyways, it's time for this to go out, collect feedback and maybe even some use outside of toy projects. Let me…

    2023 · github.com · its alternatives →

  13. 13MP

    I have been working on this game somewhat sparsely for the past three years or so. However, it is still in a very early stage, and there is a lot of work to do. One of my friends encouraged me to post about it here, since he felt people might find interesting how I don’t use any libraries for it. The game can be played on a browser by virtue of WebAssembly. There are native ports using either MiniFB or SDL2, but you have to build those yourself. I decided to write the game in C because I feel like it is a simple language that a lot of people can understand well enough, and I didn’t think I…

    2023 · zamfofex.neocities.org · its alternatives →

  14. 14IB

    This weekend I created stacklib.h - a single-header library that brings Forth-style stack operations to C. It implements a basic interpreter with: - Stack operations (push/pop/dup/swap/over/drop) - Arithmetic (+, -, *, /) - Output (., emit, cr) - Stack inspection (.s, depth) Example usage: Stack s; stack_init(&s); dict_init(); exec(&s, "10 20 + ."); // Prints "30" exec(&s, "1 2 3 4 .s"); // Shows stack contents The library is self-contained, requires no dependencies, and handles basic error checking. It was inspired by wanting to understand…

    2025 · its alternatives →

  15. 15

    C compiler created in Python. Contribute to ShivamSarodia/ShivyC development by creating an account on GitHub.

    2018 · github.com · its alternatives →

  16. 16

    A simple, self hosted, low level programming language. - mcilloni/fork

    2018 · github.com · its alternatives →

  17. 17

    A small C compiler. Contribute to rui314/chibicc development by creating an account on GitHub.

    2020 · github.com · its alternatives →

  18. 18
    Nibble▲102

    An attempt at a single pass LLVM frontend in ~3000 lines of C without external dependencies, malloc, or an AST. Included are some graphical examples. The IR isn't perfect, and the README touches on one particular downfall

    May 2026 · github.com · its alternatives →

  19. 19

    Investigation into replacing the MES compiler. Contribute to FransFaase/MES-replacement development by creating an account on GitHub.

    Dec 2025 · github.com · its alternatives →

  20. 20

    Minimal self-hosted JavaScript compiler in 1k lines of code - maierfelix/mini-js

    2017 · github.com · its alternatives →

  21. 21
    CJIT▲83

    CJIT started as a hobby project around Fabrice Bellard’s tinyCC and slowly grew into something much more practical. It is now a small portable C compiler and runner that works across Linux, macOS, and Windows, can self host, and is packaged as a single executable. What mattered most to me was keeping the barrier to entry low. You can take one small binary, drop it onto a system, and compile or run C code using the libraries already available there, without setting up a full toolchain or installing a large stack of dependencies. I find that useful for quick prototyping, testing, auditing,…

    2024 · dyne.org · its alternatives →

  22. 22

    simple virtual machine and assembler. Contribute to ronsoros/rvm development by creating an account on GitHub.

    2016 · github.com · its alternatives →

  23. 23

    Hey HN! This is a fun/educational project I built to learn OS programming. I started working on it right after graduating high school last year and have been working on it on and off during my first year of university. It features a TCP/IP stack, an HTTP server, a RAM file system, a BIOS bootloader, paging and memory management, and concurrent tasks based on cooperative scheduling, along with a custom library. It's written in a C programming style focused on safety (based on a custom library of core abstractions) that's inspired by the writing of Chris Wellons (nullprogram.com).…

    2025 · github.com · its alternatives →

  24. 24DO

Also compare

Ranked by how close each launch is in meaning, then by votes. Prices were read from each product’s own site when checked and can change. Refine with your own description →