|Period:||period 4 (week 17 through 26, i.e., 20-4-2020 through 26-6-2020; retake week 28)|
|Participants:||see Osiris Docent|
|Schedule:||Official schedule representation can be found in Osiris|
|Contents:||Every professional compiler performs an analysis of the source code of the program, to attempt to make the generated code more efficient, or to validate some aspects of the source code. Instances of this problem are type inferencing, data flow analysis (dead-code analysis) and control flow analysis. In this course we study many aspects of program analysis, control flow analysis, data flow analysis, type and effect systems and abstract interpretation. All of these are static techniques.
Note that basic knowledge of and experience with the Haskell programming language is important to do the practical assignments; this is a prerequisite to follow the course. Note, though, that you are not expected to have done the course on Advanced Functional Programming.
At the end of this course you
|Literature:||Slides and the following book:
Principles of Program Analysis
|Course form:||Combined lectures, exercise and lab sessions. See the schedule.|
|Exam form:||Written exam; lab assignments.|
|Minimum effort to qualify for 2nd chance exam:||To qualify for the retake exam, the grade of the original must be at least 4.|
|Description:||Topics discussed in this course include: