ByteBender Language and Compiler

University Project

Designing and Implementing a Language for the Sprockell CPU

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

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. 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.

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.

Report


PDF Preview