EDAP05 Concepts of Programming Languages 2021

Course facts

Credits:7.5 hp, Advanced level

Study period: LP2 2021

Locations and times:

Start: First class on 2 November (Tue), 8:15 in E:A

Labs: 08:15–10:00 (Thu, Fri), 13:15–15:00 (Thu)

Textbook: Concepts of Programming Languages by Robert Sebesta

Course responsible: Christoph Reichenbach

TAs: Idriss Riouak (idriss.riouak@cs...) and Anton Risberg Alaküla (anton.risberg_alakula@cs...)

Zoom: Zoom link for classes and office hours

Office hours: via Zoom; Monday 13:30–15:30 (formerly irregular: [11 Nov: 15:30–16:30] [19 Nov: 13:30–14:30] [22 Nov: 09:30–11:30])

Student representatives: Erik Präntare (er3020pr-s at student.lu...)

Final Exam:15 January (Sat), 08:00--13:00, in Vic:2A and Vic:2B

Previous instances: [2019]


Lab Locations

Date G0 G1 Date G2
11-18 E:Alfa E:Val 11-19 E:Alfa
11-25 E:Alfa E:Val 11-26 E:Val
12-2 E:Alfa E:Val 12-3 E:Alfa
12-9 E:Mars, E:Varg E:Val 12-10 E:Val
12-16 E:Alfa E:Val 12-17 E:Alfa

Important Links


When existing software doesn't provide what we need, programming langauges are the principal tools that we have to create new software and understand and adapt existing software. However, these languages come in many forms and flavours, often with large communities advocating their use. This can make it hard to understand what the right language for a given task might be.

In this course, we will explore key concepts that underly the programming languages of today to better understand what the common features among today's languages are. The intent of the course is to help you

The textbook for the course will be Robert Sebesta's Concepts of Programming Languages, which you can find e.g. here (stores listed in alphabetical order):

Older versions of the book should work, but references may be off.

For a more detailed overview of the material that we will be covering, please have a look at the tentative list of skills.


To pass the course, you are expected to complete all of the lab exercises (achieving an average of 50% or more of the maximum points in each lab exercise, averaged over the five lab exercise scores) and the exam. For exchange students only, there will be an alternative option to taking the exam, in that you will have to complete a side project, write a report, and briefly present your results in the final class.