Domänenspezifische Sprachen in der Med. Informatik (DSM)
1/2. Semester
5 ECTS | 4 SWS
Mündliche Prüfung (M)
Inhalte
- Eine domänenspezifische Sprache (Domain-specific Language, DSL) ist eine Programmiersprache, die gezielt auf die Anforderungen eines eng umgrenzten Anwendungsbereichs zugeschnitten ist. Daher sind DSLs für bestimmte Spezialaufgaben besser geeignet als die meisten gängigen Allzwecksprachen. In dieser Vorlesung sollen zunächst die im medizinischen Umfeld eingesetzten DSLs mit ihren besonderen Eigenschaften vorgestellt werden. Danach sollen die Teilnehmer in abwechselnden Theorie- und Praxisabschnitten eine DSL selber konzipieren und implementieren. Die Programmiersprache, in der sie die Ausführungsumgebung implementieren, können sie dabei frei wählen.
- Überblick über domänenspezifische Sprachen in der medizinischen Informatik, inklusive R, Arden-Syntax und Clinical Quality Language.
- Lexikalische Analyse von Quellcode zur Erzeugung eines Token-Streams.
- Parsen des Token-Streams zur Generierung eines abstrakten Syntaxbaums.
- Implementierung eines Treewalker-Algorithmus zum Verarbeiten des Syntaxbaums.
- Konzeption von Datentypen und Operatoren.
- Umgang mit zeitgestempelten Daten und den Anforderungen temporaler Logik.
- Besonderheiten bei der Ein-/Ausgabe, z.B. beim Einlesen von Patientenakten und der Visualisierung berechneter Daten.
- Interoperabilitätsaspekte, z.B. Zugriff auf Netzwerkressourcen.
Lernziele/Kompetenzen
Die Studierenden sind in der Lage,
- die Unterschiede zwischen DSLs und Allzwecksprachen zu erklären.
- in der Medizinischen Informatik genutzte DSLs zu vergleichen.
- eine DSL für einen ausgewählten Use Case anzuwenden.
- selbständig eine eigene DSL zu entwerfen.
Literatur
- M. Fowler, and R. Parsons, Domain-specific languages, Addison-Wesley, Upper Saddle River, NJ, 2011.
- T. Parr, The definitive ANTLR 4 reference, The Pragmatic Bookshelf, Dallas, Texas, 2012.
- M. Völter, DSL engineering: designing, implementing and using domain-specific languages, CreateSpace Independent Publishing Platform, Lexington, KY, 2010.
Dozentinnen / Dozenten
Empfohlene Vorkenntnisse
-
Gute Programmierkenntnisse sind erforderlich. Erfahrungen im Umgang mit Parser-Generatoren sind von Vorteil.
Daten zum Modul
| Semester |
1/2 |
| Unterrichtssprache |
Deutsch |
|
Häufigkeit
|
Wintersemester
|
| Kreditpunkte |
5 |
| Modulverantwortlich |
Prof. Dr. Stefan Kraus |
| Dauer |
1 Semester |
| Schwerpunkt(e) |
Medical Data Science (MDS)
|
| Studienleistung |
Keine |
| Prüfungsvorleistung |
Pflichtübung (PU) |
| Prüfungsleistung |
Mündliche Prüfung (M) |
Semesterwochenstunden
| Vorlesung |
2 SWS |
| Übung |
2 SWS |
| Summe |
4 SWS |
Arbeitsaufwand (work load)
| Vorlesung |
45 h |
| Selbststudium |
60 h |
| Aufgaben |
45 h |
| Summe |
150 h |