Main content

German original

Programming Languages and Types
(dt. Programmiersprachen und Typen)

Level, degree of commitment in original study programme Advanced module, compulsory elective module
Forms of teaching and learning,
workload
Lecture (4 SWS), recitation class (2 SWS),
270 hours (90 h attendance, 180 h private study)
Credit points,
formal requirements
9 CP
Course requirement: Successful completion of at least 50 percent of the points from the weekly exercises as well as at least 2 presentations of the tasks.
Examination type: Oral or written examination
Language,
Grading
German,
The grading is done with 0 to 15 points according to the examination regulations for study course M.Sc. Computer Sciences.
Original study programme M.Sc. Informatik / Vertiefungsbereich Informatik
Duration,
frequency
One semester,
In der Regel jährlich im Wintersemester
Person in charge of the module's outline Prof. Dr. H.-Peter Gumm, Prof. Dr. Rita Loogen

Contents

Language Concepts: Syntax, Semantics, Pragmatics

Lambda calculus, interpreters, evaluation strategies, continuations, fixed points and recursion, monads, operational semantics, objects and classes, type systems and type safety, universal/existential/higher-order types, domain-specific languages (DSL), Scheme, Haskell, Scala, Java.


Qualification Goals

Upon completion of this module, students will

  • know which programming language concepts exist and how to use them,
  • be able to quickly become familiar with new programming languages, assess their strengths and weaknesses, and compare them with other languages,
  • be better programmers - in any language,
  • have practised scientific working methods (recognising, formulating, solving problems, training the ability to abstract),
  • have trained oral communication skills in the exercises by practicing free speech in front of an audience and in discussion.

Prerequisites

None. Basic knowledge of programming is recommended.


Recommended Reading

  • Programming Languages: Application and Interpretation. S. Krishnamurthi, Creative Commons License, 2007
  • Types and Programming Languages. B. Pierce, MIT Press, 2002.



Please note:

This page describes a module according to the latest valid module guide in Wintersemester 2022/23. Most rules valid for a module are not covered by the examination regulations and can therefore be updated on a semesterly basis. The following versions are available in the online module guide:

The module guide contains all modules, independent of the current event offer. Please compare the current course catalogue in Marvin.

The information in this online module guide was created automatically. Legally binding is only the information in the examination regulations (Prüfungsordnung). If you notice any discrepancies or errors, we would be grateful for any advice.