Web-based compiler from C to WebAssembly

Write and run C programs directly on Source Academy, and interact with browser libraries directly through your C program.

poster

Description

This project introduces another supported language to Source Academy, C, by integrating a custom C to WebAssembly (Wasm) compiler into Source Academy. The compiler is written in Typescript, and compiles a C program into a Wasm module which can be run directly in the browser and interact with browser APIs through the JavaScript runtime environment. The finished compiler can potentially be used in teaching introductory programming modules conducted in C, such as CS1010, and hooked into the framework that already exists for CS1101s.

Project Members