Hacker News new | ask | show | jobs
by tptacek 3731 days ago
It's postprocessing to ARM, but it's using ARM to implement a stack-based runtime, right?

Just to be a little clearer about my concern about the C4 codebase:

C4 isn't just written in its idiosyncratic style in order to be smaller; it's also designed to compile the minimal subset of C required to self-host. For instance, global variables and, in particular, global arrays are there because C4 didn't parse structs.

This compiler is inheriting those design decisions, but has discarded the goal of compiling a minimal subset of C, so its design is a little incoherent. (Ours was too!)

C4 is more like a piece of sculpture than it is a real compiler.