% Compiler Construction
% Alex Hirsch
% 5 March 2021
# This Proseminar
## Curriculum
> […] development of a compiler for a simple, procedural programming language
## Prerequisites
- This is a master's course!
- Brain
- - -
- Fluent in C (or C++, or Go, or Rust, or Haskell)
- General programming mindset
- Knowing your tools
- Algorithms and data structures
- Graphs + traversal
- Operating systems
- Utilising your software stack
- Assembly (preferably x86)
- - -
- Software development
- Version control system
- Build systems
- Testing
- Project management
- Organisation
- Team communication
- - -
- Formal languages and automata theory
- Grammars + transformations
- Lexer / parser
## Ultimate Goal
- Building a compiler
- Specification provided
- Evaluation scheme provided
## Recommended Schedule
- See README
## Teams
- 1–3 people
- May span across PS groups
- Send me your team composition via mail within March
## Further Details
- See course material