Lund University →
Faculty of Engineering →
Department of Computer Science
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
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
- Exam: [pdf] [solution] (Updated 2023-04-12)
- There are no prior written exams. You can instead use the quizzes to prepare. We will factor this in for designing and grading this year's exam.
- You can bring two A4 sheets (= four pages, counting front and back) of your own hand-written notes to the exam.
- You will not need to memorise any parts of the Teal language, but should be able to read and understand Teal code.
News
- [2022-12-13] Invitation: Hans Wennborg, Release Manager for the LLVM Compiler, will give a talk in MA:4 at 10.15 on Friday the 16th
- [2022-12-13] Exam information added
- [2022-12-08] Exercise 2 and 3 deadlines extended by one day each
- [2022-12-05] We have relaxed the deadlines for the homework exercises.
- [2022-12-02] Homework 3 released
- [2022-12-01] Labs tomorrow (2022-12-02) will be online. Check Moodle for details.
- [2022-11-30] Due to sickness, all TA slots are cancelled this week. Labs will tentatively take place.
- [2022-11-30] Quizzes for lecture 10 delayed until next week.
- [2022-11-24] Exercise-2 is available now.
- [2022-11-24] Exercise-2 is available now.
- [2022-11-24] Quizzes for lecture 8 delayed. The quizzes will be up on Friday.
- [2022-11-16] Office hours cancelled today, Exercise 1 instructions updates
- [2022-11-12] Full Tentative Schedule Available.
- [2022-11-08] Delayed quizzes and videos. Apologies for the delays; we aim to have quizzes and videos up by noon.
- [2022-11-03] No further room or time slot changes. The poll is now closed, and the top picks confirmed the current setup.
- [2022-11-02] Room Change: We will be in E:3308 on Wednesdays
- [2022-11-02] Homework 0 released
- [2022-10-18] Initial 2022 site online
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.