185.206 Type Systems
This course is in all assigned curricula part of the STEOP.
This course is in at least 1 assigned curriculum part of the STEOP.

2017W, VO, 2.0h, 3.0EC

Properties

  • Semester hours: 2.0
  • Credits: 3.0
  • Type: VO Lecture

Aim of course

Students shall get an overview of type systems in programming languages and learn about their pros and cons. Especially the potentialities and limits in the practical use of types shall be shown. The focus is on types on modern object-oriented programming languages.

Subject of course

Meaning of the notion of type in programming languages, classification of programming languages regarding type systems, simple theoretical type models, types in imperative languages (especially Ada), theoretical models of polymorphic type systems and type inference, programming languages with polymorphic type systems, subtyping, genericity, types as partial specifications of object behariour, use of polymorphic type systems in object-oriented programming.

Educational Concept:

"Typesystems" is a lecture in the classic style based on a weekly talk. First we give an overview and introduce some terminology. Then, we (1) discuss practical experiences in subtopics, (2) introduce formal models and (3) show typical applications thereof, leading to new practical experiences. We repeat this cycle several times, thereby increasing the complexity with each iteration. In the last part of the lecture we discuss trends and approaches to address current problems.

Additional information

ECTS-Breakdown:

  • 25h: Weekly lectures
  • 25h: Consolitation of the topics by autonomous research
  • 25h: Preparation for exam and oral exam

Lecturers

Institute

Course dates

DayTimeDateLocationDescription
Fri09:00 - 11:0006.10.2017 - 19.01.2018EI 3A Hörsaal Lecture
Type Systems - Single appointments
DayDateTimeLocationDescription
Fri06.10.201709:00 - 11:00EI 3A Hörsaal Lecture
Fri13.10.201709:00 - 11:00EI 3A Hörsaal Lecture
Fri20.10.201709:00 - 11:00EI 3A Hörsaal Lecture
Fri27.10.201709:00 - 11:00EI 3A Hörsaal Lecture
Fri03.11.201709:00 - 11:00EI 3A Hörsaal Lecture
Fri10.11.201709:00 - 11:00EI 3A Hörsaal Lecture
Fri17.11.201709:00 - 11:00EI 3A Hörsaal Lecture
Fri24.11.201709:00 - 11:00EI 3A Hörsaal Lecture
Fri01.12.201709:00 - 11:00EI 3A Hörsaal Lecture
Fri15.12.201709:00 - 11:00EI 3A Hörsaal Lecture
Fri22.12.201709:00 - 11:00EI 3A Hörsaal Lecture
Fri12.01.201809:00 - 11:00EI 3A Hörsaal Lecture
Fri19.01.201809:00 - 11:00EI 3A Hörsaal Lecture

Examination modalities

By interview.

Interviews can be taken each Monday (11 to 12, except during holydays), at the last course date and by negotiation.

Course registration

Begin End Deregistration end
02.10.2017 00:00 21.10.2017 23:59

Curricula

Study CodeObligationSemesterPrecon.Info
066 504 Master programme Embedded Systems Not specified
066 931 Logic and Computation Mandatory elective
066 937 Software Engineering & Internet Computing Mandatory elective

Literature

Find the script and the slides (all in German) in the Course Material section of this course.

Previous knowledge

Good practical programming capabilities in strongly typed languages as well as knowledge about the static use of types are required.

Language

German