Module Number

INF3181
Module Title

Programming Languages I
Type of Module

Elective Compulsory
ECTS 9
Work load
- Contact time
- Self study
Workload:
270 h
Class time:
90 h / 6 SWS
Self study:
180 h
Duration 1 Semester
Frequency In the summer semester
Language of instruction German and English
Type of Exam

Written or oral exam; Successful participation in the exercise is a prerequisite for the exam.

Lecture type(s) Lecture, Tutorial
Content

Programming languages are one of the most important intellectual inventions of the 20th century. The topic of this event is the basics of programming languages: What language concepts are there, what do they mean, how to use them. Some keywords about the topics covered: Lambda- Calculus, interpreters, evaluation strategies, continuations, fixed points and recursion, monads, objects and classes, type systems, module systems, macros, domain-specific languages, Scheme, Haskell, Scala, Java.

Objectives

The students are able to evaluate and compare programming languages from a technical point of view. They can describe the meaning of above programming language constructs precisely using specialist terminology and implement them in the form of interpreters. They can estimate the meaning of the different programming language concepts for the programmer and apply them in a meaningful way.

Allocation of credits / grading
Type of Class
Status
SWS
Credits
Type of Exam
Exam duration
Evaluation
Calculation
of Module (%)
Prerequisite for participation INFM1110 Practical Computer Science 1: Declarative Programming,

INFM1120 Practical Computer Science 2: Imperative and Object-Oriented Programming
Lecturer / Other Ostermann
Literature

wird in der Vorlesung bekanntgegeben.

Last offered Sommersemester 2022
Planned for Sommersemester 2024
Assigned Study Areas BIOINFM2510, INFM2510, INFM3110, INFM3410, MDZINFM2510, MEINFM3210