Programming Languages

Programmiersprachen und Programmiertechniken

In diesem Seminar werden wir uns mit Lösungvorschlägen für Problemstellungen der Softwaretechnik beschäftigen, die durch innovativen Einsatz von Programmiersprachen oder forgeschrittene Konzepte von Programmiersprachen ermöglicht werden. Dazu lesen wir Forschungsartikel in englischer Sprache.

Dozenten

Ablauf

Jeder Teilnehmer am Seminar soll einen Vortrag halten (im November und Anfang Dezember) und eine schriftliche Ausarbeitung abgeben (vor Weihnachten). Der Vortrag und die Ausarbeitung sollen zum selben Thema sein. Die Themen sollen sich an einem Forschungsartikel orientieren, der eine Lösung eines Problems aus der Softwaretechnik mit Hilfe von Methoden der Programmiersprachenforschung vorschlägt. Die Vorträge und Ausarbeitungen sollen auf folgende Aspekte eingehen:

  • Welches Problem genau soll durch den Forschungsartikel gelöst werden?
  • Welche Lösung schlägt der Forschungsartikel vor?
  • Wie begründen die Autoren, dass die Lösung wirklich funktioniert?
  • Was hat das mit Programmiersprachen zu tun?
  • Wie hat die akademische Welt auf den Vorschlag reagiert?
  • Wie hat die Softwaretechnik-Praxis auf den Vorschlag reagiert?

Die ersten vier Fragen sollten sich aus dem Artikel selbst beantworten lassen. Für die letzten beiden Fragen soll zusätzlich recherchiert werden, ob zum Beispiel mittlerweile weitere Forschungsartikel zum selben Thema erschienen sind oder ob es produktionsreife Implementierungen des Lösungsvorschlags gibt.

Wenn möglich und sinnvoll kann der Vortrag auch eine kurze Demonstration einer Implementierung der vorgeschlagenen Lösung enthalten. Vorträge und Ausarbeitungen können in englischer oder deutscher Sprache erfolgen, auch unabhängig voneinander.

Wir haben bei den Treffen ca. 90min Zeit für zwei Vorträge, die wir so benutzen wollen:

  • 25min Vortrag
  • 15min Diskussion
  • 10min Pause
  • 25min Vortrag
  • 15min Diskussion

Melden Sie sich gerne per Email bei Tillmann Rendel
Alumni
Tillmann Rendel
, wenn Sie Fragen zur Veranstaltung haben.

Termine

Montag, 21. November, 14 Uhr c.t. in Raum A302

  • Tiark Rompf und Martin Odersky. Lightweight modular staging: A pragmatic approach to runtime code generation and compiled DSLs. Conference on Generative Programming and Component Engineering, 2010.

    Vorgetragen von Daniel Merlin.

  • Matthew Flatt. Composable and compilable macros: You want it when? International Conference on Functional Programming, 2002

    Vorgetragen von Lukas Holländer.

Donnerstag, 24. November, 14 Uhr c.t. in Raum A302

  • Tim Harris, Simon Marlow, Simon Peyton Jones und Maurice Herlihy. Composable memory transactions. Symposium on Principles and Practice of Parallel Programming, 2005.

    Vorgetragen von Matthias Heisler.

  • Philipp Haller und Martin Odersky. Scala Actors: Unifying thread-based and event-based programming. Theoretical Computer Science 410(2-3), 2009

    Vorgetragen von Bastian Germann.

Montag, 28. November, 14 Uhr c.t. in Raum A302

  • Patrice Godefroid, Nils Klarlund, und Koushik Sen. DART: directed automated random testing. International Conference on Programming Language Design and Implementation, 2005

    Vorgetragen von Benjamin Vollmer.

  • Bertrand Meyer. 1992. Applying “Design by Contract”. Computer 25(10), 1992.

    Vorgetragen von Alexander Jung.

Donnerstag, 1. Dezember, 14 Uhr c.t. in Raum A302

  • Koen Classen und John Hughes. QuickCheck: A lightweight tool for random testing of Haskell programs. International Conference on Functional Programming, 2000.

    Vorgetragen von Adrian Frischknecht.

  • Brady, Edwin, Christoph A. Herrmann, und Kevin Hammond. Lightweight Invariants with Full Dependent Types. Trends in Functional Programming, 2008

    Vorgetragen von Jonas Benn.