Language chosen Implemented in C, compiler for C. I started off with a complete ANSI C grammar and found out it was not a wise thing to do, with the amount of work required. Nevertheless the Syntax Tree is created for most of the ANSI C syntax. Essentially it's a subset of C which I can't clearly define, as I dropped things where convenient (for example, array initializers, int a[5] = { foo, bar, ... }; is dropped. Otherwise for, while loops, if statements, etc supported as well as unions, structs, arrays, to the IR level. Assembly is generated only for very basic things unfortunately.