Funktionale Programmierung
LVA 185.A03, VU 2.0, ECTS 3.0, 2015 W

Funktionale Programmierung

(zweistündige Vorlesung mit Übung; siehe auch TISS/185.A03)

Haben Sie Interesse an einem geförderten Auslandsstudium?

Informationen zu Fördermöglichkeiten finden Sie hier.

 

Gastvorlesung im WS 2015/16

Vom 19.10.-30.10.2015 hält Professor Prof. Dr. Dr.h.c. Dines Bjørner eine Gastvorlesung an der TU Wien. Prof. Bjørner ist nicht zuletzt auch durch die maßgebliche Mitentwicklung der Vienna Development Method bekannt. Ein Einstieg in seine Vorlesung ist noch möglich. Es lohnt sich!

Termine für Vorlesung, Haskell Live, Haskell Private und Labor

Vorlesung

Haskell Live - Plenumsübung

Haskell Private - Individualfeedback

Haskell Private bietet Ihnen die Möglichkeit, ausgehend von Ihren abgegebenen Übungsaufgaben individuelles Feedback zu erhalten. Dazu werden Sie nach Maßgabe unserer personellen Möglichkeiten je einmal im November und Dezember zu einem persönlichen jeweils 15 bis 20 minütigen Gespräch mit einem Tutor eingeladen, um individuelle Rückmeldungen und Hinweise besonders zu Ihren Aufgabenlösungen zu erhalten. Weitere Details zur Abwicklung von Haskell Private werden im Lauf der Vorlesung bekanntgegeben.

Laborsprechstunden und -betreuung

Tutoren stehen beginnend mit dem 26.10.2015 regelmäßig zu folgender Zeit für Fragen und indivuelle Betreuung im Labor zur Verfügung.

Dienstag, 27.10.2015 10:00 Uhr - 11:00 Uhr
Dienstag, 03.11.2015 10:00 Uhr - 11:00 Uhr
Montag (ab Mo, 09.11.2015) 14:00 Uhr - 15:00 Uhr

Plenumsübung Haskell Live, Haskell Private und Laborsprechstunden und -betreuung bieten die Möglichkeit, Fragen und Probleme in einem persönlichen Gespräch zu klären. Für Fragen von allgemeinem Interesse steht das TISS-Forum zur Lehrveranstaltung zur Verfügung.

Nicht für die Öffentlichkeit bestimmte Fragen zur Lehrveranstaltung können Sie ebenfalls persönlich insbesondere mit den Tutoren besprechen oder elektronisch an bitte ausschließlich folgende Adresse richten: fp2015W@g0.complang.tuwien.ac.at
(Hinweis: an fp2015W@g0... nur von der g0 aus senden, nicht von einem anderen Rechner oder von außen!)

Anmeldung

Die Anmeldung zur Lehrveranstaltung erfolgt über TISS/185.A03 und ist bis Fr, 16.10.2015, 12:00 Uhr, möglich. Diese ist maßgeblich für die Teilnahme an der Lehrveranstaltung und unterliegt den in den Studienplänen genannten Voraussetzungen.

Nach Abschluss der Anmeldeperiode wird für die Studierenden mit valider Anmeldung ein persönliches Benutzerkonto auf der Maschine g0.complang.tuwien.ac.at eingerichtet. Benutzerkennung und erstes Losungswort werden jedem Teilnehmer durch Nachricht an die Standardadresse e-Matr.Nr@student.tuwien.ac.at mitgeteilt. Dieses erste Losungswort ist im Zuge des ersten Einbuchens auf das Benutzerkonto durch ein selbstgewähltes neues Losungswort zu ersetzen.

Inhalt und Ziele

Die Vorlesung führt in Theorie und Praxis in die Prinzipien und Konzepte des funktionalen Programmierstils ein und spannt dabei den Bogen von den Grundlagen bis zur Anwendung. In der vorlesungsbegleitenden Plenumsübung Haskell Live wird am Beispiel konkreter Aufgabenstellungen praktisch vorgeführt und diskutiert, wie sich diese zur Lösung einsetzen lassen. Dabei können insbesondere auch eigene Lösungsvorschläge vorgestellt und zur Diskussion gestellt werden. Im Übungsteil wird der funktionale Programmierstil anhand von Beispielen eigenständig angewendet und eingeübt und so ein vertieftes theoretisches und praktisches Verständnis für die Konzepte und Prinzipien funktionaler Programmierung erarbeitet und erworben. Als Demonstrations- und Implementierungssprache wird in Vorlesung und Übung die funktionale state-of-the-art Programmiersprache Haskell verwendet.
        Die Studierenden erhalten so ein umfassendes theoretisches und praktisches Verständnis der Grundlagen, Prinzipien und Konzepte der funktionalen Programmierung und lernen, diese auf ihre Eignung zur Lösung programmiertechnischer Aufgaben zu bewerten und zielorientiert und angemessen im funktionalen Programmierstil einzusetzen und anzuwenden.

Vorlesungs- und Übungsunterlagen

In der Lehrveranstaltung wird die Programmiersprache Haskell zur praktischen Illustration funktionaler Programmierung verwendet; in der Übung wird der für viele Plattformen frei verfügbare Haskell-Interpreter Hugs 98 verwendet.

Für die Übungsaufgaben werden auf dem Aufgabenblatt oder auf der Webseite der Lehrveranstaltung bei Bedarf einige Testfälle angegeben. Diese fallweise angegebenen Testfälle sind nur dazu gedacht, die erwartete Signatur, insbesondere die Reihenfolge von Argumenten, deutlich zu machen. Ein weitergehendes eigenständiges Testen der Programme können die Testfälle nicht ersetzen. Sie sind dazu nicht gedacht und nicht geeignet.

 
Lehrveranstaltung
 
 
Inhalt
 
Folien
 
Hinweise
 
Vorlesung Teil I bis Teil VI, Literatur, Anhang pdf
 
Stand: 12.12.2015
Vorbesprechung
Motivation,
Organisatorisches
pdf  
Stand: 10.10.2015

 

 
Übung
 
Abgabe-/Nachabgabe-
termin
 
Angabe
 
Hinweise und Bemerkungen
02.12.2015 09.12.2015 (15:00) /
16.12.2015 (15:00)
Blatt 7.pdf
Letztes Aufgabenblatt.
Hinweise aus dem TISS-Forum ergänzt (07.12.2015).
25.11.2015 09.12.2015 (15:00) /
(war 02.12.2015) /
15.12.2015 (15:00) /
(war 09.12.2015)
Blatt 6.pdf
Hinweise aus dem TISS-Forum ergänzt (01.12.2015).
18.11.2015 25.11.2015 (15:00) /
09.12.2015 (15:00) /
(war 02.12.2015)
Blatt 5.pdf Hinweise aus dem TISS-Forum ergänzt (23.11.2015).
11.11.2015 18.11.2015 (15:00) /
25.11.2015 (15:00)
Blatt 4.pdf
Keine.
04.11.2015 18.11.2015 (15:00) /
(war 11.11.2015) /
25.11.2015 (15:00) /
(war 18.11.2015)
Blatt 3.pdf
Abgabe um eine Woche verlängert (fehlendes Argument in der Funktion wochentag3 ergänzt, Sprechweise paarweise verschieden erklärt) (09.11.2015).
28.10.2015 04.11.2015 (15:00) /
18.11.2015 (15:00) /
(war 11.11.2015)
Blatt 2.pdf
Abgabefrist für Zweitabgabe verlängert (10.11.2015).
21.10.2015 28.10.2015 (15:00) /
04.11.2015 (15:00)
Blatt 1.pdf
Keine.

 

Beurteilung

Übung

Für die Lösungen der Aufgabenblätter werden in Abhängigkeit der Güte der Lösungen unterschiedlich viele Punkte vergeben. Pro Aufgabenblatt sind zwischen 0 und maximal 100 Punkte möglich. Für jedes Aufgabenblatt gibt es dabei zwei Abgabetermine, wobei sich die Gesamtpunktezahl für ein Aufgabenblatt nach der Formel "Gesamtpunktezahl = (Punkte für Lösung zum Erstabgabetermin + Punkte für Lösung zum Zweitabgabetermin) / 2". Die volle Punktzahl kann also erreicht werden, wenn alle Lösungen zum Erstabgabetermin abgegeben werden; die halbe Punktzahl kann erreicht werden für Lösungen, die erstmals oder in veränderter Form zum Zweitabgabetermin abgegeben werden. Änderungen (oder Weglassungen) von Lösungen vom Erstabgabetermin können die Gesamtpunktezahl daher sowohl positiv als auch negativ beeinflussen. Wenn die Lösung durch die Änderung an Güte verliert, kann sich die erreichte Gesamtpunktezahl insgesamt verringern.

Für eine positive Beurteilung des Übungsteils sind von den maximal erreichbaren Punkten für alle Aufgabenblätter mindestens 50% erforderlich, für "Befriedigend" mindestens 62.5%, für "Gut" mindestens 75% und für "Sehr Gut" mindestens 87.5%. Bei z.B. 10 Aufgabenblättern im Semester (in diesem Semester werden es 8 und maximal 800 Punkte) sind maximal 1.000 Punkte erreichbar. Unter der Annahme von 10 Aufgabenblättern sind dann mindestens 500 Punkte (50%) für eine positive Beurteilung des Übungsteils erforderlich, für "Befriedigend" mindestens 625 (62.5%), für "Gut" mindestens 750 (75%) und für "Sehr Gut" mindestens 875 Punkte (87.5%).

Die Note für den Übungsteil bestimmt zur Hälfte die Note der Lehrveranstaltung. Die zweite Hälfte ergibt sich aus der schriftlichen Prüfung. Eine Voraussetzung für eine insgesamt positive Beurteilung ist eine positive Beurteilung beider Teile, des Übungsteils und des schriftlichen Prüfungsteils.

Schriftliche Prüfung

Die Beurteilung setzt sich je zur Hälfte aus dem Erfolg bei der Übung und dem Ergebnis einer 90-minütigen schriftlichen Prüfung (sog. Klausur) zusammen. Die schriftliche Prüfung erfolgt über den Vorlesungs- und Übungsstoff und einen in den Vorlesungsmaterialien angegebenen wissenschaftlichen (Übersichts-) Artikel, den Sie sich im Lauf der Vorlesungszeit selbstständig erschließen. Der Haupttermin für die schriftliche Prüfung ist im Anschluss an den Vorlesungsblock. Nachtragsklausurtermine wird es zu Beginn, in der Mitte und gegen Ende der Vorlesungszeit im Sommersemester 2016 geben. Die genauen Termine werden in TISS bekanntgegeben. Nach Ende der Vorlesungszeit im Sommersemester wird es keine weiteren Nachtragstermine geben. Bis dahin noch nicht ausgestellte Zeugnisse werden dann ausgestellt.

Eine Anmeldung zu den schriftlichen Prüfungen ist jeweils erforderlich und erfolgt über TISS.

Zeugnisausstellung

Zeugnisse werden zum frühestmöglichen Zeitpunkt ausgestellt. Das ist nach nicht positivem Abschluss des Übungsteils, nach jedem (positiven oder negativen) Abschluss der schriftlichen Prüfung bzw. nach Verstreichen aller schriftlichen Prüfungstermine.

Vortragender

Jens Knoop.
Complang
Knoop
   Events
   Teaching/Lehre
      ERASMUS/LLP
      LVA-Stammseiten
      Lehre 2018 S
      Lehre 2017 W
      Lehre 2017 S
      Lehre 2016 W
      Lehre 2016 S
      Lehre 2015 W
         Fkt. Prog.
         Opt. Übers.
      Frühere Semester
   Research Interests
   Publications
   Professional Activities
   Memberships
   Selected CFPs
   Useful Links
Sitemap
Sprechstunde
wiederholte LVAs:
Fkt. Programmierung
Opt. Übersetzer
Sonstige
Schnellzugriff
TISS
voriges Semester
voriges Jahr
Fakultät für Informatik
Technische Universität Wien
Anfang | HTML 4.01 | letzte Änderung: 2017-10-10 (Knoop)