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.

2016W, 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:

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

Lecturers

Institute

Course dates

DayTimeDateLocationDescription
Fri09:00 - 11:0007.10.2016 - 27.01.2017EI 3A Hörsaal Lecture
Type Systems - Single appointments
DayDateTimeLocationDescription
Fri07.10.201609:00 - 11:00EI 3A Hörsaal Lecture
Fri14.10.201609:00 - 11:00EI 3A Hörsaal Lecture
Fri21.10.201609:00 - 11:00EI 3A Hörsaal Lecture
Fri28.10.201609:00 - 11:00EI 3A Hörsaal Lecture
Fri04.11.201609:00 - 11:00EI 3A Hörsaal Lecture
Fri11.11.201609:00 - 11:00EI 3A Hörsaal Lecture
Fri18.11.201609:00 - 11:00EI 3A Hörsaal Lecture
Fri25.11.201609:00 - 11:00EI 3A Hörsaal Lecture
Fri02.12.201609:00 - 11:00EI 3A Hörsaal Lecture
Fri09.12.201609:00 - 11:00EI 3A Hörsaal Lecture
Fri16.12.201609:00 - 11:00EI 3A Hörsaal Lecture
Fri13.01.201709:00 - 11:00EI 3A Hörsaal Lecture
Fri20.01.201709:00 - 11:00EI 3A Hörsaal Lecture
Fri27.01.201709:00 - 11:00EI 3A Hörsaal Exams

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
23.09.2016 00:00 22.10.2016 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

Lecture notes for this course are available. See http://www.complang.tuwien.ac.at/franz/typsysteme.html

Previous knowledge

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

Language

German