The course presents techniques, theories, and tools used to constructing a compiler. The course also discusses how these ideas can be used to define and interpret domain specific languages within modeldriven software engineering. As a result, the course focuses on the compiler frontend and runtime interpretation of intermediate program representations. The following topics are covered:
- Different compilation phases
- Objectoriented compiler design
- Lexical analysis based on finite automata and regular languages
- Contextfree grammars and languages
- Different parsing techniques for contextfree languages
- Type systems and type inference
- Attributed grammars
- Semantic analysis
- Intermediate program representations
- Code generation
- Stackbased execution
The course will be given during the period: 31/8 -1/11 2020
Please sign up no later than 23/8 2020
For more information see the course plan:
https://kursplan.lnu.se/kursplaner/syllabus-4DV507-1.pdfIf you have any questions please turn to Kostiantyn Kucher,
kostiantyn.kucher@lnu.se