Programmiersprachen: Konzepte, Werkzeuge und Umgebungen (Wintersemester 2015/2016)
Dozent:
Prof. Dr. Robert Hirschfeld
(Software-Architekturen)
,
Patrick Rein
(Software-Architekturen)
,
Tim Felgentreff
(Software-Architekturen)
,
Marcel Taeumel
(Software-Architekturen)
,
Toni Mattis
(Software-Architekturen)
Allgemeine Information
- Semesterwochenstunden: 4
- ECTS: 6
- Benotet:
Ja
- Einschreibefrist: 23.10.2015
- Lehrform: Seminar
- Belegungsart: Wahlpflichtmodul
Studiengänge, Modulgruppen & Module
- Operating Systems & Information Systems Technology
- Software Architecture & Modeling Technology
Beschreibung
Solving problems using a computer usually requires programmers to analyze and decompose the problem into smaller and smaller constituent problems until these can be expressed in a form suitable for consumption by the computer. In the history of computing, programming language designers have strived to create language concepts that facilitate the expressions of particular kinds of problems at a high level, trying to delegate some of the analysis and decomposition to the compiler or language runtime. Different languages find different trade-offs regarding programming model, tool support, and performance based on the goals and envisioned problem domains of their designers. In this seminar we will investigate historically interesting programming languages in detail and discuss their trade-offs and importance on computing as a whole. Participants will be expected to learn about a language and its programming model, build programs in the language, and possibly write tools or interpreters for it. Languages of interest includes early, never implemented languages such as Konrad Zuse's Plankalkül; important languages from the early history of computing, such as FLOW-MATIC, COBOL, Fortran, or Ada; exotic and specialized languages such as APL, Simula, Forth, or Beta; as well as interesting modern research languages such as Grace, Newspeak, Fortress, or Io.
Lern- und Lehrformen
Project-seminar
Leistungserfassung
Die Leistung wird durch die erfolgreiche Bearbeitung eines gewählten Themas in Gruppen von 3-4 Personen erbracht. Zur Erlangung der sechs benoteten Leistungspunkte sind die folgenden Anforderungen zu erfüllen:
- Regelmäßige Anwesenheit im Seminar bzw. beim Treffen mit den Projektbetreuern
- Eigenständiges Studieren, Aufbereiten und Präsentieren wissenschaftlicher Arbeiten
- Bearbeitung einer gewählten Problemstellung
- Abschlusspräsentation der Projektergebnisse
Eine Woche vor der jeweiligen Abschlusspräsentation bespricht jede Gruppe die Vorversion der Vortragsunterlagen mit einem der Betreuer. Die Vortragsunterlagen sind einen Tag vor dem Vortrag per Email einzureichen. Sie bestehen aus:
- den Dokumentquellen der im Vortrag verwendeten Folien,
- einer PDF-Version derselben,
- dem in der Demo verwendeten Quelltext,
- einer Installationsbeschreibung und
- einem Screencast
Alle im Rahmen der Veranstaltung erstellten Quelltexte sollten unter der MIT-Lizenz oder einer BSD-Lizenz stehen.
Zurück