02 / Systems, compilers & platforms

WACC Compiler

Scala compiler for the WACC language, targeting AArch64

End-to-end compiler for the WACC language: lexing, parsing, semantic analysis, code generation. Compiles to AArch64 assembly, cross-compiled with aarch64-linux-gnu-gcc and run under qemu-aarch64. 76% average across the milestones, each assessed by autotests and an interactive code review.

Why it matters

Designed with a Stack IR layer between AST and backend so an optimisation pass can slot in cleanly, rather than locking the codegen into a pure stack machine.

Built with Scala, parsley, Stack IR, AArch64.

all work