Veranstaltung: Sprachimplementierung

Nummer:
148171
Lehrform:
Vorlesung und Übungen
Medienform:
Folien, rechnerbasierte Präsentation, Tafelanschrieb
Verantwortlicher:
Prof. Dr. Eberhard Bertsch
Dozent:
Prof. Dr. Eberhard Bertsch (Mathematik)
Sprache:
Deutsch
SWS:
6
LP:
9
Angeboten im:

Ziele

Die Studierenden haben Kenntnisse und Verständnis von Übersetzungsverfahren, speziell auch für prozedurale Programmiersprachen (wie C++, Java).

Inhalt

Die effiziente Implementierung von Programmiersprachen wie PASCAL, C oder JAVA gehört zu den wichtigsten und zugleich anspruchsvollsten Aufgaben der Praktischen Informatik. Im Laufe mehrerer Jahrzehnte wurde eine Reihe von Methoden entwickelt, die heute zum Kernbestand dieses Gebiets gehören, und die sich sinngemäß auch auf die Realisierung einfacherer Benutzer-Schnittstellen anwenden lassen. Hierzu gehören unter anderem: Lexikalische Analyse (Scanner); Syntax-Analyse, insbesondere mit LL(1)- und LR(1)-Grammatiken; statische Semantik; Laufzeitbehandlung von imperativen Konstrukten; dynamische Datentypen; Optimierung zur Compile-Zeit. Je nach Interesse seitens der Studierenden können methodisch verwandte Algorithmen zur Analyse von Zeichenketten einbezogen werden, die in der molekularen Biologie eine zunehmende Rolle spielen (beim Mustervergleich in DNA-Sequenzen und Proteinen).

Voraussetzungen

keine

Empfohlene Vorkenntnisse

Grundlagen der Informatik

Literatur

  1. Aho, Alfred V., Lam, Monica S., Sethi, Ravi "Compilers Principles, Techniques, & Tools", Addison Wesley Longman Publishing Co, 2005
  2. Maurer, Dieter, Wilhelm, Reinhard "Übersetzerbau. Theorie, Konstruktion, Generierung", Springer, 1996