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.