PI5003 Programmiersprachen: Konzepte und Realisation

Modulverantwortliche
  • Prof. Dr. Uwe Meyer
Lehrende
  • Björn Lötters
  • Prof. Dr. Uwe Meyer
Notwendige Voraussetzungen zur Teilnahme

Keine

Kurzbeschreibung

Dieses Modul liefert den Studierenden ein vertieftes Verständnis des Entwurfsspektrums von Programmiersprachen mit ihren unterschiedlichen Konzepten und dem Spannungsverhältnis von Ausdrucksmitteln und Implementierungskosten.

Inhalte
  • Grundbegriffe der Programmiersprachen: Syntax, Semantik, Compiler, Interpreter
  • Programmierparadigmen, ihre wichtigsten Vertreter und Implementierungsmuster: Funktionales Programmieren, Objektorientierung, Datenfluss-Konzepte, Logisches Programmieren, etc.
  • Continuations, Iteratoren, Generatoren
  • Interpretierte und Skript-Sprachen
  • Operationale und denotationelle Semantik von Programmiersprachen
  • Typ- und Modularisierungskonzepte
Qualifikations- und Lernziele

Fachkompetenzen

  • Die Studierenden können die Konzepte, die den unterschiedlichen Programmiersprachen zu Grunde liegen, erklären und voneinander abgrenzen.

Methodenkompetenzen (fachlich & überfachlich)

  • Die Studierenden sind in der Lage, die Bedeutung und Einsatzmöglichkeiten der dargelegten Paradigmen einzuschätzen und diese anzuwenden.

Sozialkompetenzen

  • Die Studierenden sind in der Lage, die dargelegten Konzepte in Sprachimplementierungen in prototypischer Weise, in Teamarbeit vertiefend auszuarbeiten und zu präsentieren.

Selbstkompetenzen

  • Die Studierenden können im Projekt ihren Implementierungsfortschritt reflektieren und ihre Arbeitsweise methodisch anpassen.
ECTS-Leistungspunkte (CrP)
  • 6 CrP
  • Arbeitsaufwand 180 Std.
  • Präsenzzeit 60 Std.
  • Selbststudium 120 Std.
Lehr- und Lernformen
  • 4 SWS
  • Vorlesung 2 SWS
  • Praktikum 2 SWS
Studiensemester
  • Informatik (M.Sc. 2022)
Dauer
1 Semester
Häufigkeit des Angebots
Einmal im Jahr
Unterrichtssprache
Deutsch
Bonuspunkte

Ja

Bonuspunkte werden gemäß § 9 (4) der Allgemeinen Bestimmungen vergeben. Art und Weise der Zusatzleistungen wird den Studierenden zu Veranstaltungsbeginn rechtzeitig und in geeigneter Art und Weise mitgeteilt.

Prüfungsleistungen

Prüfungsvorleistung: Projektarbeit

Prüfungsleistung: Mündliche Prüfung, Präsentation der Projektergebnisse (zusammen 100%)

Benotung
Die Bewertung des Moduls erfolgt gemäß §§ 9, ggf. 12 (Teilleistungen), ggf. 18 (Arbeiten, Kolloquien) der Allgemeinen Bestimmungen (Teil I der Prüfungsordnung).
Verwendbarkeit
Gemäß § 5 der Allgemeinen Bestimmungen (Teil I der Prüfungsordnung) Verwendbarkeit in allen Masterstudiengänge der THM möglich.
Voraussetzung für Module
Literatur, Medien
  • Harper, R.: Practical Foundations of Programming Languages. Cambridge University Press.
  • Pierce, B. C.: Types and Programming Languages. The MIT Press.
  • Abelson, H.; Sussman, G. J.: Structure and interpretation of computer programs. The MIT Press.
  • Friedman, D. P.; Wand, M.: Essentials of Programming Languages. The MIT Press.

Rechtliche Hinweise