ByteBender Language and Compiler

University Project

Designing and Implementing a programming language for the Sprockell CPU

A custom programming language and compiler designed to generate code for the Sprockell processor.

Report


PDF Preview

About the project


ByteBender is a custom programming language and compiler developed as part of a university project. It translates high-level code into machine instructions for the Sprockell processor, a simple Haskell-based CPU designed for educational purposes. The project includes a frontend for parsing and type-checking, a backend for code generation and integration with the Sprockell simulator for execution. The language supports multithreading, synchronization primitives and shared memory operations.

This project was created as part of Concurrency and Compiler Construction (202200192)

Grade: 8

Key features


  • Custom Language: Designed for educational purposes with support for multithreading and synchronization.
  • Frontend: Includes parsing, type-checking and symbol table management.
  • Backend: Generates machine instructions for the Sprockell processor.
  • Integration: Executes generated code on the Sprockell simulator.
  • Concurrency: Supports thread creation, locks and shared memory operations.