Modulcode: | Inf-PPS |
Englische Bezeichnung: | Principles of Programming Languages |
Modulverantwortliche(r): | Prof. Dr. Michael Hanus |
Turnus: | unregelmäßig (SS15 SS17 WS18/19 SS20 SS22 WS23/24) |
Präsenzzeiten: | 4V 2Ü |
ECTS: | 8 |
Workload: | 60 Std. Vorlesung, 30 Std. Übung, 150 Std. Selbststudium |
Dauer: | ein Semester |
Modulkategorien: | BSc-Inf-WP (BSc Inf (21)) BSc-WInf-WP-Inf (BSc WInf (21)) WI (BSc Inf (15)) MSc-Inf-WP (MSc Inf (21)) 2F-MEd-Inf-WP (MEd-Hdl Inf (21)) 2F-MA-Inf-WP (2F-MA Inf (21)) MSc-WInf-WP-Inf (MSc WInf (21)) PI (MSc Inf (15)) WI (MSc Inf (15)) WI (MSc WInf (15)) WI (MEd Inf) WPI (MEd Inf) IG (TA) (MSc Inf (2-Fach)) IG (SA) (MSc Inf (2-Fach)) WI (MSc WInf) IG (MSc Inf) MV (MSc Inf) |
Lehrsprache: | Deutsch |
Voraussetzungen: | Inf-FortProgP infDP-01a |
In diesem Modul werden grundlegende Prinzipien heutiger Programmiersprachen vorgestellt. Dabei steht neben Methoden zur Beschreibung von Sprachkonzepten die praktische Anwendung von Sprachkonzepten zur Lösung von Softwareproblemen im Vordergrund.
Die Studierenden können sich
In diesem Modul werden grundlegende Prinzipien und Konstruktionen heutiger Programmiersprachen vorgestellt, wobei die konkrete Ausprägung am Beispiel verschiedener konkreter Programmiersprachen gezeigt wird. Dabei wird auf eine exakte und methodische adäquate Beschreibung der Sprachkonzepte mittels verschiedener formaler Systeme Wert gelegt, mit deren Hilfe sprachliche Aspekte komplexer Softwaresysteme geeignet spezifizierbar sind.
Grundkenntnisse verschiedener prozeduraler und deklarativer Programmiersprachen, wie sie z.B. im Modul "Deklarative Programmierung" (infDP-01a) oder im Modul "Fortgeschrittene Programmierung" (Inf-FortProgP) vermittelt werden. Hilfreich sind außerdem einzelne der in den Beschreibungen von "Logik in der Informatik" (Inf-LogInf) aufgeführten Lernziele.
Mündliche Prüfung am Ende der Vorlesung
J.C. Mitchell: Concepts in Programming Languages, Cambridge University Press, New York, 2003, ISBN: 978-0521780988.
D. Appleby, J. VandeKopple: Programming Languages: Paradigm and Practice, McGraw-Hill, New York, 1997, ISBN: 978-0071148139.
R. Sethi: Programming Languages: Concepts and Constructs,2nd ed., Addison-Wesley, Boston, 1996, ISBN: 978-0201590654.
R.W. Sebesta: Concepts of Programming Languages, 5th ed., Addison-Wesley, Boston, 2002, ISBN: 978-0201752953.
C. Ghezzi, M. Jazayeri: Programming Language Concepts 2/E, John Wiley & Sons, Hoboken, NJ, 1987, ISBN: 978-0471821731.
K. Arnold, J. Gosling: The Java Programming Language, Addison-Wesley, Boston, 1996, ISBN: 9780201634556.
D. Flanagan: Java in Nutshell, O'Reilly Media, Sebastopol, CA, 1999, ISBN: 978-1565924871.
B. Meyer: Object-oriented Software Construction, Prentice Hall, Boston, 1997, ISBN: 978-0136291558.
R. Bird: Introduction to Functional Programming using Haskell, Prentice Hall, Boston, 1998, ISBN: 978-0134843469.
R.T.W. Hinze: Einführung in die funktionale Programmierung mit Miranda, Teubner, Stuttgart, 1992, ISBN: 9783519022879.
S. Thompson: Haskell - The Craft of Functional Programming, Addison-Wesley, Boston, 1996: ISBN: 978-0201403572.
L. Sterling, E. Shapiro: The Art of Prolog, MIT Press, Cambridge, Massachusetts, 1991, ISBN: 978-0262192507.
M. Hanus: Problemlösen mit Prolog, Teubner, Stuttgart, 1987, ISBN: 978-3519125419.
J.W. Lloyd: Foundations of Logic Programming, 2nd Ed., Springer, Berlin Heidelberg, 1987, ISBN: 978-3-642-83189-8.
J. Armstrong et al: Concurrent Programming in Erlang, Prentice Hall, Boston, 1996, ISBN: 978-0135083017.