Undergraduate course

Programming Languages

Semester of Instruction


Objectives and Content

The course gives a practical and theoretical introduction to the semantics of programming language constructs. The course covers a range from micro level constructs, e.g., parameter passing, to macro level constructs, e.g., module systems. Reflecting on the influence of the constructs on software quality forms part of the course.

Learning Outcomes

After successfully completing the course, the students shall be able to:

- Define micro level constructs by programming evaluators.

- Define macro level constructs and how they are emulated in common programming languages.

- Identify language features that benefit software integrity (reliability, robustness, and security) and software validation (verification and testing).

Required Previous Knowledge


Recommended Previous Knowledge

INF101, INF121/INF122

Compulsory Assignments and Attendance

Compulsory exercises

Forms of Assessment

Oral exam. If there are many participants, a written exam might be arranged instead. Compulsory exercises may count towards the final grade.

Grading Scale

The grading scale used is A to F. Grade A is the highest passing grade in the grading scale, grade F is a fail.

Subject Overlap


Exam information