Sie haben JavaScript deaktiviert! Ohne Javascript stehen Ihnen einige Funktionen nicht zur Verfügung.Eine Anleitung zum Aktivieren von Javascript finden Sie hier.
Cookies erleichtern die Bereitstellung unserer Dienste. Mit der Nutzung unserer Dienste erklären Sie sich damit einverstanden, dass wir Cookies verwenden.
Präsenzvorlesung mit Beamer, Übungen
Für die problembezogene Beurteilung von Programmiersprachen und operationalen Beschreibungen ist es nicht hinreichend, eine oder auch zwei Programmiersprachen gut zu kennen. Vielmehr geht es darum, auch Meta-Konzepte zu erwerben, die es erlauben, die Eigenschaften von Programmiersprachen zu vergleichen und einzuschätzen. Hierzu werden verschiedene Programmierparadigmen behandelt, inklusive Betrachtung ihrer Implementierung.
Inhalte im Einzelnen: - Ausdrücke und Anweisungen - Typkonzepte, Variablen und Werte - Prozedurale und funktionale Abstraktion - Modularisierungs- und Abstraktionskonzepte- Datentypen und Polymorphismus- Logische Programmierung
Ziel der Veranstaltung ist es, folgende Fähigkeiten auszubilden: - Beurteilung von Programmiersprachen vom höheren Standpunkt, - Befähigung zur problemadäquaten Auswahl einer Programmiersprache, - Verbesserung der Kommunikations- und Reflexionsfähigkeit beim Programmieren/Implementieren. - Präsentation/Diskussion von Beispielaufgaben in den Übungen
- Hutton: Programming in Haskell (2nd Ed., Cambridge University Press, 2016)- Blackburn/Bos/Striegnituz: Learn Prolog Now! (College Publications, 2006)- Sebesta: Concepts of Programming Languages (6th Ed., Addison-Wesley, 2003) - Wilson/Clark: Comparative Programming Languages (3rd Ed., Addison-Wesley, 2001) - D. Watt: Programmiersprachen – Konzepte und Paradigmen (Hanser, 1996)
Im Masterstudiengang CPS ist die Veranstaltung ausschließlich für Studierende im Einstiegsschwerpunkt für Ingenieurinnen und Ingenieure wählbar.
In order to judge the problem related adequacy of programming languages and operational representations it is not sufficient to know one or two programming languages more or less well. Instead, it is also important to acquire meta level concepts which allow for comparing and assessing relevant features of programming languages. To this aim, different programming paradigms are covered, as well as consideration of their implementation. Contents: - Expressions and commands - Type concepts, variables and values - Procedural and functional abstraction- Modularisation and abstraction concepts- Data types and polymorphism- Logic programming
The goal of this lecture is to train the following competences: - Evaluation/judgment of programming languages - Ability to choose a programming language suitable for the problem to solve- Improvement of communication- and reflection skills during programming/implementation - Presentation/discussion of example problems in the exercises