VL Compilerbau (Wahl Master)
Skript: (HTML), (pdf, einzeln) (pdf, 8 pro Seite) (pdf, fortlaufend), Online-Übungsaufgaben, Projekt für Wiki,Issues,Quelltexte,
OS Überwachungswirtschaft (Wahl Master)
VL Fortgeschrittene Programmierung (Pflicht Bachelor 4. Sem)
Skript: HTML, PDF Folien einzeln, PDF je 8 Folien, PDF fortlaufend, online-Aufgaben, Projekt für Wiki,Issues,Quelltexte,
VL Constraint-Programierung Wahlfach Bachelor Informatik
Skript: HTML, PDF Folien einzeln, PDF je 8 Folien, PDF fortlaufend, Diskussionen, Online-Aufgaben, Überblick
VL Computermusik, Wahlfach Master Informatik
Skript: HTML, PDF Folien einzeln, PDF je 8 Folien, PDF fortlaufend, Diskussionen, Online-Aufgaben
OS INM, MIM: Fortgeschrittene Konzepte in Programmiersprachen
VL Prinzipien von Programmiersprachen, Pflichtfach Master Informatik
Skript: HTML, PDF Folien einzeln, PDF je 8 Folien, PDF fortlaufend, Diskussionen, Online-Aufgaben
Wahl INM und MIM: VL Künstliche Intelligenz (Modulbeschreibung)
Skript: HTML, PDF Folien einzeln, PDF je 8 Folien, PDF fortlaufend, online-Aufgaben, Projekt für Wiki,Issues,Quelltexte,
Wahl MIB und Pflicht INB : VL Automaten und Formale Sprachen (Modulbeschreibung)
Skript: HTML, PDF Folien einzeln, PDF je 8 Folien, PDF fortlaufend, online-Aufgaben, Projekt für Wiki,Issues,Quelltexte,
Pflicht INB und MIB: VL Fortgeschrittene Programmierung (Modulbeschreibung)
Skript: HTML, PDF Folien einzeln,
PDF je 8
Folien, PDF
fortlaufend, online-Aufgaben,
Projekt
für Wiki,Issues,Quelltexte,
VL Constraint-Programierung Wahlfach Bachelor Informatik
Skript: HTML, PDF Folien einzeln, PDF je 8 Folien, PDF fortlaufend, Diskussionen Online-Aufgaben, Überblick
VL Computermusik, Wahlfach Master Informatik
Skript: HTML, PDF Folien einzeln, PDF je 8 Folien, PDF fortlaufend, Diskussionen Online-Aufgaben
VL Wissenschaftskommunikation in der Informatik, Pflicht Bachelor Informatik
Skript: HTML, PDF Folien einzeln, PDF je 8 Folien, PDF fortlaufend, Modulbeschreibung, Arbeitsanweisung gitlab.imn)
VL Prinzipien von Programmiersprachen, Pflichtfach Master Informatik
Skript: HTML, PDF Folien einzeln, PDF je 8 Folien, PDF fortlaufend, Diskussionen Online-Aufgaben
Pflichtfach:
VL Fortgeschrittene Programmierung
Skript: HTML, PDF Folien einzeln,
PDF je 8
Folien, PDF
fortlaufend, online-Aufgaben,
Projekt
für Wiki,Issues,Quelltexte,
Ergänzende Hinweise zu Software - falls Sie das, was im Pool installiert ist, selbst bauen oder (außerhalb der VL) eigene Projekte bearbeiten.
Wahlfächer:
VL Compilerbau (Inhalt: siehe Skripte früherer Jahre. Quelle: Turbak und Gifford: DCPL, siehe auch https://mail.haskell.org/pipermail/haskell-cafe/2009-May/061108.html. Vorgehen: von Woche zu Woche schrittweise Ergänzung des Quelltextes eines (zunächst) Interpreters, (dann) Compilers.)
Folien: (HTML), (pdf, einzeln) (pdf, 8 pro Seite) (pdf, fortlaufend), Online-Übungsaufgaben, Projekt für Wiki,Issues,Quelltexte,
OS Fortgeschrittene Konzepte von Programmiersprachen ((ältere) Modulbeschreibung. Schwerpunkte diesmal: Dependent Types (Bsp. Agda), Ressource-Typen (Bsp. Rust), Graduelle Typisierung (Bsp. Typescript), weitere auf Teilnehmerwunsch möglich.)
OS Computational Social Choice (Modulbeschreibung)
Diese beiden OS werden zusammengelegt. Gemeinsames Projekt für Wiki,Issues,Quelltexte.
Computermusik (Modulbeschreibung), (siehe auch Software), Wahlfach Master Informatik
Prinzipien von Programmiersprachen, Pflichtfach Master Informatik
Informatik als Nebenfach für Bachelor Buch- und Medienproduktion
(25. Nov. 21) Ab sofort für alle meine Lehrveranstaltungen: Vorlesung: synchrone Distanz-Lehre, Hausaufgaben-Bearbeitung: asynchron (Diskussion in Tracker/Forum, autotool), Übung: (Hausaufgaben-Präsentation) synchron distanz. Konferenz-URLs werden auf der jeweiligen asynchronen Plattform bekanntgegeben.
Informatik-Studiengänge benutzen für Hausaufgaben-Einteilung und -Bearbeitung (in Gruppen) das jeweilige Projekt in gitlab.imn. Beantragen Sie die Projekt-Mitgliedschaft in der Web-Oberfläche und senden Sie mir per Mail Ihren Gitlab.Imn-Benutzernamen und Matrikelnummer, da die Zuordnung nicht immer offensichtlich ist. Diese Projekte sind ab KW 42 nicht mehr öffentlich sichtbar.
Derzeit (8. Okt. 2021) wird grundsätzlich auf Präsenz-Lehre orientiert.
Vorlesung Symbolisches Rechnen (Modulbeschreibung)
Skript: HTML, PDF Folien einzeln, PDF je 8 Folien, PDF fortlaufend, online-Aufgaben,
Projekt für Wiki,Issues,Quelltexte,
Ergänzende Hinweise zu Software - falls Sie das, was im Pool installiert ist, selbst bauen möchten.
Oberseminar Auto-Grading im E-Learning als Teil des OS Autorensysteme, gemeinsam mit Prof. Hering
Vorlesung Fortgeschrittene Programmierung
Skript: HTML, PDF Folien einzeln, PDF je 8 Folien, PDF fortlaufend, online-Aufgaben
Projekt für Wiki,Issues,Quelltexte,
Ergänzende Hinweise zu Software - falls Sie das, was im Pool installiert ist, selbst bauen oder (außerhalb der VL) eigene Projekte bearbeiten.
Wahlfach
Vorlesung Computermusik (Master Informatik),
Skript: HTML, PDF Folien einzeln, PDF je 8 Folien, PDF fortlaufend, online-Aufgaben, NEU: Wiki,Issues,Quelltexte, Modulbeschreibung.
Pflichtfächer
Vorlesung Prinzipien von Programmiersprachen (Master Informatik)
Skript: HTML, PDF Folien einzeln, PDF je 8 Folien, PDF fortlaufend, online-Aufgaben, NEU: Issues,Quelltexte, deprecated: Forum,Wiki.
Vorlesung Informatik (Bachelor Buch- und Medienproduktion)
Skript: HTML, PDF Folien einzeln, PDF je 8 Folien, PDF fortlaufend, online-Aufgaben, Forum,Wiki.
Die für Informatik und PPS geplanten Klausuren werden durch eine “Online-Klausur” (Bezeichnung lt. Prüfungsordnung: “digitale Hausarbeit”) ersetzt. Dabei sind zum angegebenen Klausur-Zeitraum Aufgaben in autotool zu bearbeiten - in einem Prüfungsmodus, der die Anzahl der Einsendungen und die Ausführlichkeit der sofortigen Rückmeldungen beschränkt.
Für jede Prüfung wird ein separater Autotool-Kurs eingerichtet, den Sie nur nach erfolgter Prüfungszulassung sehen und betreten können. Vor Betrachtung und Bearbeitung der Aufgaben müssen Sie bestätigen, daß Sie die Rechtsgrundlagen kennen und einhalten. Es geht dabei um allgemeine Grundsätze (u.a. eigenständiges Arbeiten) sowie spezielle Regeln für Online-Prüfungen, siehe Ergänzungs-Ordnungen, z.B. Paragraph 2(11) in https://www.htwk-leipzig.de/fileadmin/portal/htwk/studieren/1_unsere_studiengaenge/3_studien_pruefungsordnungen/2020-12-17_ErgO_INB_2020_21_RK_VO%CC%88.pdf.
In ausreichendem Abstand vor der tatsächlichen Prüfung bekommen Sie die Möglichkeit, den Prüfungsmodus des autotool bei einer Testklausur auszuprobieren. Details dazu werden über den für die jeweilige LV festgelegten Kommunikationsweg bekanntgegeben. (Wiederholer PPS: melden Sie sich für das Gitlab.Imn-Projekt an wie unten beschrieben.)
Forschungsfreisemester (u.a. Arbeiten an https://gitlab.imn.htwk-leipzig.de/waldmann/pure-matchbox, https://gitlab.imn.htwk-leipzig.de/autotool/all0, https://gitlab.imn.htwk-leipzig.de/waldmann/cyp)
Wahlfächer:
Oberseminar Überwachungskapitalismus (Master) (Details)
Vorlesung Compilerbau (Master)
Inhalt: Modelle, Methoden und Werkzeuge zur semantikgetreuen Übersetzung zwischen verschiedenen Programmiersprachen. Anwendung: Interpreter und Compiler für anwendungsspezifische Sprachen selbst schreiben.
Konzept und Literatur siehe https://www.imn.htwk-leipzig.de/~waldmann/talk/13/fg214/
Folien: (HTML), (pdf, einzeln) (pdf, 8 pro Seite) (pdf, fortlaufend), Online-Übungsaufgaben
Vorlesung Sprachkonzepte der parallelen Programmierung (Bachelor)
aus dem Inhalt:
Folien: (HTML), (pdf, einzeln) (pdf, 8 pro Seite) (pdf, fortlaufend), Online-Übungsaufgaben
Pflichtfach:
Vorlesung Prinzipien von Programmiersprachen (Master)
Folien: (HTML), (pdf, einzeln) (pdf, 8 pro Seite) (pdf, fortlaufend), Online-Übungsaufgaben
Pflicht-Vorlesung Fortgeschrittene Programmierung (Bachelor)
Folien: (HTML), (pdf, einzeln) (pdf, 8 pro Seite) (pdf, fortlaufend), Online-Übungsaufgaben
Wahl-Vorlesung Computermusik (Master)
Folien: (HTML), (pdf, einzeln) (pdf, 8 pro Seite) (pdf, fortlaufend), Online-Übungsaufgaben
Wahl-Vorlesung Sprachkonzepte der Parallelen Programmierung (Bachelor, 5. Semester)
Zur Motivation: Bartosz Milewski: The Downfall of Imperative Programming
Folien: (HTML), (pdf, einzeln) (pdf, 8 pro Seite) (pdf, fortlaufend), Online-Übungsaufgaben
aus dem Inhalt:
Voraussetzungen: Pflichtveranstaltungen lt. Modulplan, insbesondere: Modellierung und (Fortgeschrittene) Programmierung.
Pflicht-Vorlesung Prinzipien von Programmiersprachen (Master, 1. Semester)
Folien: (HTML), (pdf, einzeln) (pdf, 8 pro Seite) (pdf, fortlaufend), Online-Übungsaufgaben
Wahl-Vorlesung Künstliche Intelligenz (Bachelor, 4. Semester)
Folien: (HTML), (pdf, einzeln) (pdf, 8 pro Seite) (pdf, fortlaufend), Online-Übungsaufgaben
Oberseminar Fortgeschrittene Konzepte in Programmiersprachen (Master)
Inhaltsangabe (das ist jedenfalls der Plan - kann nach Teilnehmerwünschen modifiziert werden), OPAL-Gruppe
Pflicht-Vorlesung Fortgeschrittene Programmierung (Bachelor, 4. Semester)
Folien: (HTML), (pdf, einzeln) (pdf, 8 pro Seite) (pdf, fortlaufend), Online-Übungsaufgaben
Wahl-Vorlesung Compilerbau (Master, 3. Semester)
Folien: (HTML), (pdf, einzeln) (pdf, 8 pro Seite) (pdf, fortlaufend), Online-Übungsaufgaben
Voraussetzungen: Pflichtveranstaltungen lt. Modulplan, insbesondere: Prinzipien von Programmiersprachen.
Wahl-Vorlesung Sprachkonzepte der Parallelen Programmierung (Bachelor, 5. Semester)
Folien: (HTML), (pdf, einzeln) (pdf, 8 pro Seite) (pdf, fortlaufend), Online-Übungsaufgaben
Zur Motivation: Bartosz Milewski: The Downfall of Imperative Programming
aus dem Inhalt:
Voraussetzungen: Pflichtveranstaltungen lt. Modulplan, insbesondere: Modellierung und (Fortgeschrittene) Programmierung.
Pflicht-Vorlesung Prinzipien von Programmiersprachen (Master, 1. Semester)
Folien: (HTML), (pdf, einzeln) (pdf, 8 pro Seite) (pdf, fortlaufend), Online-Übungsaufgaben
Pflicht-Vorlesung Theoretische Informatik (vertretungsweise: Berechenbarkeit und Komplexität) (Master, 3. Semester)
Folien: (HTML), (pdf, einzeln) (pdf, 8 pro Seite) (pdf, fortlaufend), Online-Übungsaufgaben
Vorlesung Algorithmen und Datenstrukturen (Bachelor, 2. Semester)
Folien: (HTML), (pdf, einzeln) (pdf, 8 pro Seite) (pdf, fortlaufend), Online-Übungsaufgaben
Vorlesung Fortgeschrittene Programmierung (Bachelor, 4. Semester)
Folien: (HTML), (pdf, einzeln) (pdf, 8 pro Seite) (pdf, fortlaufend), Online-Übungsaufgaben
Wahlfach (Bachelor)
Vorlesung Sprachkonzepte der Parallelen Programmierung (Einschreibung)
Folien: (HTML), (pdf, einzeln) (pdf, 8 pro Seite) (pdf, fortlaufend), Online-Übungsaufgaben
Zur Motivation: Bartosz Milewski: The Downfall of Imperative Programming.
aus dem Inhalt:
Wahlfächer (Master)
Vorlesung Constraint-Programmierung (Einschreibung)
Folien: (HTML), (pdf, einzeln) (pdf, 8 pro Seite) (pdf, fortlaufend), Online-Übungsaufgaben, Quelltexte
Constraints gibt es überall: die meisten algorithmischen Aufgabenstellungen bestehen aus Einschränkungen an eine Menge von möglichen Lösungen. Die Constraint-Programmierung ist eine Technik zur Lösung solcher Aufgaben, bei der Formulierungen solcher Einschränkungen Bestandteile von Programmen sind. In der Praxis wird Constraint-Programmierung zum Schließen mit unvollständigem Wissen, zum Lösen kombinatorischer Probleme, zur Modellierung, Simulation und Diagnose und in vielen anderen Bereichen industriell angewendet.
Literatur:
Oberseminar Computermusik (Inhalt, OPAL-Gruppe)
Wir betrachten Erzeugung und Analyse von Musik mittels Computer.
Musik wird konkret (als Audiosignal) und abstrakt (durch Noten) beschrieben. Diese Beschreibungen benutzen domainspezifische Sprachen, die auf physikalischen und physiologischen Grundlagen beruhen. Deswegen sind Kenntnisse aus VL Prinzipien von Programmiersprachen erforderlich sowie aus der Physik und Signalverarbeitung nützlich.
In Vorträgen soll Original-Literatur ausgewertet werden sowie ergänzt durch Vorführungen freier Software, ggf. auch Hardware (elektronische Musikinstrumente).
Wir gehen besonders ein auf die Leipziger Tradition in der Musik (Johann Sebastian Bach) und in der Musiktheorie (Hugo Riemann).
Pflichtfach (Master)
Vorlesung Prinzipien von Programmiersprachen
Folien: (HTML), (pdf, einzeln) (pdf, 8 pro Seite) (pdf, fortlaufend), Online-Übungsaufgaben
Pflichtfach (Bachelor)
Vorlesung Fortgeschrittene Programmierung
Folien: (HTML), (pdf, einzeln) (pdf, 8 pro Seite) (pdf, fortlaufend), Online-Übungsaufgaben
Tutorien zur Prüfungsvorbereitung
(Das bedeutet: unter Anleitung diskutieren Sie Ihre Fragen. Wenn Sie keine Fragen mitbringen, findet keine Diskussion statt. Dann geht der Tutor nach 90 min nach Hause und bekommt trotzdem sein Geld.)
am 13. Juni 9:30, 24. Juni 11:15, 27. Juni 9:30, 8. Juli 11:15, jeweils 90 min in Raum Li 207.
Wahlfach (Bachelor)
Vorlesung Sprachkonzepte der Parallelen Programmierung
Inhalt: nebenläufiges Rechnen mit gemeinsamem Speicher (explizite Sperren, Transaktionen), nebenläufiges Rechnen ohne Sperren, verteiltes Rechnen mit getrenntem Speicher (Aktoren), Entwurfsmuster für paralleles Rechnen (map/reduce).
Zur Motivation: Bartosz Milewski: The Downfall of Imperative Programming.
Folien: (HTML), (pdf, einzeln) (pdf, 8 pro Seite) (pdf, fortlaufend), Online-Übungsaufgaben
Wahlfach (Master)
Vorlesung Compilerbau
Folien: (HTML), (pdf, einzeln) (pdf, 8 pro Seite) (pdf, fortlaufend), Online-Übungsaufgaben
Pflichtfach (Master)
Vorlesung Prinzipien von Programmiersprachen
Folien: (HTML), (pdf, einzeln) (pdf, 8 pro Seite) (pdf, fortlaufend), Online-Übungsaufgaben
Ich bin im Forschungsfreisemester und nehme einen Lehrauftrag an der Uni Leipzig wahr. Das dort angebotene Fach
kann im Rahmen der Kooperationsvereinbarung auch von HTWK-Studenten besucht werden.
Wahlfach (Master): ich empfehle ebenso den Besuch der Vorlesung
Prof. Aart Middeldorp: Rewriting General Course for Beginners
(als Blockveranstaltung innerhalb der International School on Rewriting, 10. - 14. August 2015, HTWK Leipzig)
Wahlfächer (Master)
Vorlesung Symbolisches Rechnen (OPAL-Gruppe, Einschreibung)
Folien (Prof. Waldmann): (HTML), (weitere Formate); Folien (Prof. Gräbe); Aufgaben; Anmerkungen;
Algorithmen und Werkzeuge zum Rechnen mit: beliebig großen Zahlen, Vektoren, Polynomen, arithmetischen Ausdrücken, geometrischen Figuren und Musik.
Diese Veranstaltung wird gemeinsam mit Prof. Dr. Gräbe (Universität Leipzig) durchgeführt und auch für Studenten der Uni Leipzig angeboten ( Einschreibung und weitere Informationen )
Oberseminar Datenschutz (OPAL-Gruppe, Einschreibung)
Datenschutz ist der Schutz des Grundrechtes auf informationelle Selbstbestimmung. Die Seminarteilnehmer informieren sich zunächst über gesetzliche Grundlagen (in Land, Bund, EU) und analysieren dann Fallbeispiele zur Verarbeitung personenbezogener Daten durch die Hochschule und in der Wirtschaft. Siehe auch http://www.imn.htwk-leipzig.de/~waldmann/datenschutz/
Pflichtfach (Master)
Vorlesung Prinzipien von Programmiersprachen
Folien: (HTML), (pdf, einzeln) (ps, 8 pro Seite) (pdf, fortlaufend)
Wahlfach (Bachelor)
(zu wenig Einschreibungen, findet nicht statt) Vorlesung Sprachkonzepte der Parallelen Programmierung (OPAL-Gruppe, Einschreibung)
Inhalt: nebenläufiges Rechnen mit gemeinsamem Speicher (explizite Sperren, Transaktionen), verteiltes Rechnen mit separaten Speichern (Aktoren), Entwurfsmuster für paralleles Rechnen (map/reduce).
Zur Motivation: Bartosz Milewski: The Downfall of Imperative Programming.
Wahlfächer (Master)
Pflichtfach (Bachelor)
Wahlfächer (Master)
Oberseminar Fortgeschrittene Konzepte für Web-Applikationen (OPAL-Gruppe, Einschreibung)
Wir benutzen das Buch Michael Snoyman: Developing Web Applications with Haskell and Yesod, O’Reilly 2012 und bauen mit den dort beschriebenen Konzepten, z. B.
während des Seminars einen Prototyp einer Web-Applikation. Grundkenntnisse in funktionaler Programmierung sind nützlich (algebraische Datentypen, Funktionen höherer Ordnung, vgl. VL Deklarative Programmierung).
Vorlesung Compilerbau (OPAL-Gruppe, Einschreibung) Folien: (HTML), (pdf, einzeln) (ps, 8 pro Seite) (pdf, fortlaufend)
Pflichtfach (Master)
Vorlesung Prinzipien von Programmiersprachen
Folien: (HTML), (pdf, einzeln) (ps, 8 pro Seite) (pdf, fortlaufend)
Wahlfächer (Master)
Pflichtfach (Bachelor)
Vorlesung Deklarative Programmierung
Folien: (HTML), (pdf, einzeln) (ps, 8 pro Seite) (pdf, fortlaufend)
Wahlfächer (Master)
Vorlesung Compilerbau (OPAL-Gruppe, Einschreibung)
Folien: (HTML), (pdf, einzeln) (ps, 8 pro Seite) (pdf, fortlaufend)
Vorlesung Sprachkonzepte der parallelen Programmierung Folien: (HTML), (pdf, einzeln) (ps, 8 pro Seite) (pdf, fortlaufend)
Oberseminar Computational Social Choice (OPAL-Gruppe, Einschreibung)
Im Oberseminar behandeln wir Abschnitte aus dem Buch
Jörg Rothe, Dorothea Baumeister, Claudia Lindner und Irene Rothe: Einführung in Computational Social Choice (Spektrum Akad. Verlag, 2012).
Wir betrachten: Strategien in Spielen, Wahlverfahren und Teilungsalgorithmen. Wir benutzen dabei Methoden aus der Informatik: Spezifikation, Korrektheitsbeweis, Komplexitätsbetrachtung.
Zum Hintergrund dieses Fachgebietes vergleiche What is Computational Social Choice? (Rothe et al., 2010)
Pflichtfach (Master)
Vorlesung Prinzipien von Programmiersprachen
Folien: (HTML), (pdf, einzeln) (ps, 8 pro Seite) (pdf, fortlaufend)
Wahlfächer (für Master-Studenten):
Vorlesung Constraint-Programmierung
Folien: (HTML), (pdf, einzeln) (ps, 8 pro Seite) (pdf, fortlaufend)
Constraints gibt es überall: die meisten algorithmischen Aufgabenstellungen bestehen aus Einschränkungen an eine Menge von möglichen Lösungen. Die Constraint-Programmierung ist eine Technik zur Lösung solcher Aufgaben, bei der Formulierungen solcher Einschränkungen Bestandteile von Programmen sind. In der Praxis wird Constraint-Programmierung zum Schliessen mit unvollständigem Wissen, zum Lösen kombinatorischer Probleme, zur Modellierung, Simulation und Diagnose und in vielen anderen Bereichen industriell angewendet.
Literatur:
Oberseminar (gemeinsam mit Prof. Weicker) Masterminds of Programming
Im Seminar studieren wir Berichte von Erfindern wichtiger und einflußreicher Programmiersprachen. Dabei werden deren Entwurfsziele deutlich sowie die Gründe für die jeweiligen Entwurfsentscheidungen und ihre Alternativen. Das Seminar ist eine passende Fortsetzung und Ergänzung der Vorlesung “Prinzipien von Programmiersprachen”. Die Seminarvorträge sollen durch Vorführungen echter Codebeispiele ergänzt werden. Dazu sind ggf. spezielle Compiler, Interpreter oder Emulatoren zu verwenden.
Literatur: Federico Biancuzzi: Masterminds of Programming, O’Reilly 2009
Pflichtfach:
Vorlesung Fortgeschrittene Programmierung (4. Sem. Bachelor) (Skript 2011)
(ist äquivalent zu Softwaretechnik II und Deklarative Programmierung)
Folien: (HTML), (pdf, einzeln) (ps, 8 pro Seite) (pdf, fortlaufend)
ausgewählte Schwerpunkte:
Wahlfach:
Vorlesung Compilerbau (Informatik-Master)
Folien: (HTML), (pdf, einzeln) (ps, 8 pro Seite) (pdf, fortlaufend)
Pflichtfächer:
Vorlesung Softwaretechnik I (Informatik-Bachelor)
Einschreibung für Projektgruppen
Folien: (HTML), (pdf, einzeln) (ps, 8 pro Seite) (pdf, fortlaufend)
Vorlesung Prinzipien von Programmiersprachen (Informatik-Master)
Folien: (HTML), (pdf, einzeln) (ps, 8 pro Seite) (pdf, fortlaufend)
Wahlfach
Vorlesung Sprachkonzepte der parallelen Programmierung (Informatik-Master)
OPAL-Gruppe (Einschreibung) | Modulbeschreibung
Folien: (HTML), (pdf, einzeln) (ps, 8 pro Seite) (pdf, fortlaufend)
Lernziele/Kompetenzen:
Inhalt:
Pflichtfach:
Vorlesung Softwaretechnik II (Informatik-Bachelor)
Folien: (HTML), (pdf, einzeln) (ps, 8 pro Seite) (pdf, fortlaufend)
Wahlfächer
Vorlesung Deklarative Programmierung (Informatik-Bachelor)
siehe Beschreibung für Fktl/Log. Prog. WS09/10.
Folien: (HTML), (pdf, einzeln) (ps, 8 pro Seite) (pdf, fortlaufend)
Ein guter Einstieg ist (war) wieder der Leipziger Haskell-Workshop am 4. Juni 2010.
Vorlesung Compilerbau (Informatik-Master)
Folien: (HTML), (pdf, einzeln) (ps, 8 pro Seite) (pdf, fortlaufend)
Pflichtfach:
Vorlesung Prinzipien von Programmiersprachen (Informatik-Master)
Folien: (HTML), (pdf, einzeln) (ps, 8 pro Seite) (pdf, fortlaufend)
Oberseminar Praktische Informatik (Informatik-Master/Diplom)
Thema: Vorbereitung, Durchfüührung und Auswertung des ICFP Programming Contest 2010
Pflichtfach:
Vorlesung Prinzipien von Programmiersprachen (Informatik-Master) (= Compilerbau-Grundkurs für Informatik-Diplom)
Folien: (HTML), (pdf, einzeln) (ps, 8 pro Seite) (pdf, fortlaufend)
Wahlfächer
Vorlesung Funktionale und Logische Programmierung (Informatik-Bachelor)
Funktionale, logische (und Constraint-) Programmierung gehören zum deklarativen Programmieren, warum ist dieses Paradigma so wichtig?
ergänzende Informationen zur Modulbeschreibung (INBW-LFP, Seite 50):
Schwerpunkt ist funktionale Programmierung in Haskell,
aufbauend auf der Behandlung von Entwurfsmustern in
Softwaretechnik 2 (INB-SWT2).
logische Programmierung in Mercury,
aufbauend auf Behandlung von Prolog in Künstlicher
Intelligenz (INBP-KI).
ein guter Einstiegspunkt ist HAL4 (Tutorial, Workshop, Party) am 12. Juni 2009 in Halle (bitte anmelden wie auf Webseite beschrieben)
Folien: (HTML), (pdf, einzeln) (ps, 8 pro Seite) (pdf, fortlaufend)
Vorlesung Compilerbau (Informatik-Master) (= Compilerbau-Aufbaukurs für Informatik-Diplom))
In Prinzipien von Programmiersprachen haben Sie Sprachen nur benutzt, hier entwerfen und implementieren Sie selbst.
(Jeder Dozent hält sein Fach für das wichtigste der Welt. So auch hier, und die Begründung ist:)
Der Compilerbau beruht auf wohl untersuchten theoretischen Grundlagen (formale Sprachen, Attributgrammatiken, Typsysteme, Semantik) und man benötigt die praktische Informatik (effiziente Algorithmen und Datenstrukturen) ebenso wie die technische (Prozessorarchitekturen). Durch sinnreiche Kombination von Methoden dieser Fachgebiete konstruiert man Werkzeuge (Scanner, Parser, Codegeneratoren, Optimierer), die sich seit Jahrzehnten in der Praxis bewähren. Der Compilerbau ist deswegen die Krönung der Informatik und ein würdiger Abschluß Ihres Masterstudiums.
Folien: (HTML), (pdf, einzeln) (ps, 8 pro Seite) (pdf, fortlaufend)
Oberseminar Software aus Komponenten (Informatik-Master/Diplom)
Komponententechnologien werden als eine Weiterentwicklung objekt-orientierter Technologien betrachtet. Übergreifende theoretische Konzepte und Prinzipien für Softwarenachnutzung werden im Buch Clemens Szyperski with Dominik Gruntz and Stephan Murer: Component Software - Beyond Object-Oriented Programming, Second Edition, Addison-Wesley / ACM Press, 2002 dargestellt.
Wir betrachten besonders Komponentenkonzepte auf lose gekoppelten Architekturen, wie sie in der Webservice-Technologie Anwendung finden. Wir vergleichen Komponentenmodelle und -plattformen: CORBA, happstack, Java (EE), .NET.
Als Anwendungsbeispiel diskutieren wir u.a. die geplante Kopplung von autotool und Olat (Opal). Weitere Beispiele können von den Seminarteilnehmern vorgeschlagen werden, gern auch im Zusammenhang mit in Arbeit befindlichen Projekt- oder Abschlußarbeiten.
Wahlfach:
Vorlesung Constraint-Programmierung (Informatik-Master) Folien: (HTML), (pdf, einzeln) (ps, 8 pro Seite) (pdf, fortlaufend)
Constraints gibt es überall: die meisten algorithmischen Aufgabenstellungen bestehen aus Einschränkungen an eine Menge von möglichen Lösungen. Die Constraint-Programmierung ist eine Technik zur Lösung solcher Aufgaben, bei der Formulierungen solcher Einschränkungen Bestandteile von Programmen sind. Während ursprünglich hauptsächlich logische Sprachen durch Constraints erweitert wurden, um die Ausdrucksstärke der Sprachen bei der Behandlung arithmetischer Ausdrücke zu verbessern, gibt es heute viele verschiedene Arten von Constraint-Sprachen (deklarative aber auch imperative und objekt-orientierte), und viele Constraint-Domains und entsprechende Lösungsmechanismen sind ausführlich untersucht worden. In der Praxis wird Constraint-Programmierung zum Schliessen mit unvollständigem Wissen, zum Lösen kombinatorischer Probleme, zur Modellierung, Simulation und Diagnose und in vielen anderen Bereichen industriell angewendet. Neben der Vorstellung bestimmter Constraint Systeme und -Lösungsmechanismen sind Sprachen des Constraint Programming, die Modellierung von Constraint-Problemen, heuristische Suche und Optimierung Inhalte von Vorlesung und praktischer Übung.
Als Beispiel lösen wir das N-Damen-Problem mit einem SAT-Solver: das C#-Programm Queens.cs erzeugt das Boolesche Constraint-System (in konjunktiver Normalform) queens8.cnf und das Programm MiniSat berechnet daraus umgehend eine Lösung queens8.sol. Dabei sind die Felder des Schachbrettes der Reihe nach numeriert und nicht belegte Felder haben ein negatives Vorzeichen. Natürlich ist CNF-SAT NP-vollständig, aber MiniSat ist so effizient, daß auch für größere Felder das Hinschreiben des Constraint-Systems fast länger dauert als das Lösen.
Literatur
Pflichtfach:
Vorlesung Softwaretechnik II (IN-B, MI-B)
Folien: (HTML), (pdf, einzeln) (ps, 8 pro Seite) (pdf, fortlaufend)
Wahlfächer
Oberseminar Spieltheorie
Wir besprechen Abschnitte aus dem Buch Jörg Bewersdorff: Glück, Logik und Bluff sowie weitere aktuelle Themen.
Vorlesung Compilerbau (Aufbaukurs) (Informatik-Master)
vorheriger Besuch von Prinzipien von Programmiersprachen ist Voraussetzung für die Belegung des Master-Wahlfachs Compilerbau.
Einschreiben (Übungsgruppe wählen),
Folien: (HTML), (pdf, einzeln) (ps, 8 pro Seite) (pdf, fortlaufend)
Pflichtfächer
Vorlesung Prinzipien von Programmiersprachen (Informatik-Master)
ist identisch mit Pflicht-Vorlesung Compilerbau (Informatik-Diplom)
ist nicht identisch mit Wahl-Vorlesung Compilerbau (Informatik-Master)
Einschreiben (Übungsgruppe wählen),
Folien: (HTML), (pdf, einzeln) (ps, 8 pro Seite) (pdf, fortlaufend)
Vorlesung Informatik I (Medientechnik FbM)
Einschreiben (Übungsgruppe wählen),
Folien: (HTML), (pdf, einzeln) (ps, 8 pro Seite) (pdf, fortlaufend)
Wahlfächer
Oberseminar Praktische Informatik (IN-M)
Von mir betreute Diplomanden berichten in diesem Seminar über ihre Arbeiten.
Weitere Themen aus den Bereichen Programmiersprachen, Softwareentwicklung je nach Interesse der Teilnehmer, Vorschläge bitte in OPAL eintragen:
Pflichtfächer:
Vorlesung Softwaretechnik II (IN-B, MI-B)
Folien: (HTML), (pdf, einzeln) (ps, 8 pro Seite) (pdf, fortlaufend)
Vorlesung Informatik II (MT, FbM)
Folien: (HTML), (pdf, einzeln) (ps, 8 pro Seite) (pdf, fortlaufend)
Wahlfächer
Vorlesung Compilerbau (Aufbaukurs) (Informatik-Master)
Einschreiben (für Übungen), Folien: (HTML), (pdf, einzeln) (ps, 8 pro Seite) (pdf, fortlaufend)
vorheriger Besuch von Prinzipien von Programmiersprachen ist Voraussetzung für die Belegung des Master-Wahlfachs Compilerbau.
Pflichtfächer:
Vorlesung Prinzipien von Programmiersprachen (Informatik-Master)
ist identisch mit Pflicht-Vorlesung Compilerbau (Informatik-Diplom)
Einschreiben (für Übungen), Folien: (HTML), (pdf, einzeln) (ps, 8 pro Seite) (pdf, fortlaufend)
(ist nicht identisch mit Wahl-Vorlesung Compilerbau (Aufbaukurs) (Informatik-Master))
Vorlesung Informatik (Medientechnik FbM) Einschreiben (für Übungen), Folien: (HTML), (pdf, einzeln) (ps, 8 pro Seite) (pdf, fortlaufend)
CASE/Projektmanagement für Inf-Dipl. (= Softwaretechnik II für Inf-Bach.)
Einschreibung für Übungen
Folien: (HTML), (pdf, einzeln) (ps, 8 pro Seite) (pdf, fortlaufend)
Objektorientiere Konzepte für Inf-Dipl.
Einschreibung für Übungen
Folien: (HTML), (pdf, einzeln) (ps, 8 pro Seite) (pdf, fortlaufend)
Vorlesung Informatik II (für Medientechniker)
Einschreibung für Übungen
Folien: (HTML), (pdf, einzeln) (ps, 8 pro Seite) (pdf, fortlaufend)
Wahlfächer
Vorlesung Symbolisches Rechnen Einschreiben, Folien: (HTML), (pdf, einzeln) (ps, 8 pro Seite) (pdf, fortlaufend)
(gemeinsam mit Prof. Geser, Prof. Petermann, Prof. Weicker ): Diplomanden-Seminar Praktische Informatik. (Einschreiben)
Offen für alle Interessenten. Pflichtveranstaltung für unsere Diplomanden.
Pflichtfächer:
Vorlesung Prinzipien von Programmiersprachen (Informatik-Master)
ist identisch mit Pflicht-Vorlesung Compilerbau (Informatik-Diplom)
Einschreiben für Übungen, Folien: (HTML), (pdf, einzeln) (ps, 8 pro Seite) (pdf, fortlaufend)
(ist nicht identisch mit Wahl-Vorlesung Compilerbau (Informatik-Master), diese wird aktuell nicht angeboten. Besuch von Prinzipien von Programmiersprachen ist Voraussetzung für die spätere Belegung des Master-Wahlfachs Compilerbau.)
Vorlesung Informatik (Medientechnik FbP) Einschreiben für Übungen, Folien: (HTML), (pdf, einzeln) (ps, 8 pro Seite) (pdf, fortlaufend)
Lehrveranstaltungen an der Universität Leipzig (1998-2003) und an der Universität Jena (1993-1998)