EDAP15 Program Analysis

Course facts

Credits:7.5 hp, Advanced level

Study period: LP2 2022

Room: E:3308 (Wednesdays) E:2116 (Mondays)

Time and date: Mondays 10:15 and Wednesdays 10:15, starting 2022-10-21 (exception: 2022-12-14 at 08:00)

Course responsible: Christoph Reichenbach

Teaching Assistant: Idriss Riouak

Student representatives: Johannes Aronsson

Materials: slides, videos, textbook (for download)

Office hours: Wednesdays 14:00-15:00 in E:2112b

Previous course instances: 2020 2018 (as PhD course)

Final Exam: Written, 2023-01-12 14:00 in Sparta:D

Exam Information

News

Textbooks

Overview

Program analysis is the foundation for most modern software tools, such as compilers, bug checkers, just-in-time optimisers, refactoring engines, and IDEs. In this course we will explore three central program analysis techniques: type inference, dataflow analysis, and dynamic program analysis.

The course format includes lectures (parts of the course may be in "flipped classroom format", tbd) and homework exercises that emphasise practical program analysis tasks. You will work in groups of two.

PhD students taking the course may contact me to discuss alternative homework exercises that better fit their research interests.