course: Implementations of languages

number:
148171
teaching methods:
lecture with tutorials
media:
overhead transparencies, computer based presentation, black board and chalk
responsible person:
Prof. Dr. Eberhard Bertsch
lecturer:
Prof. Dr. Eberhard Bertsch (Mathematik)
language:
german
HWS:
6
CP:
9
offered in:

Exam

All statements pertaining to examination modalities (for the summer/winter term of 2020) are given with reservations. Changes due to new requirements from the university will be announced as soon as possible.

Termin wird vom Dozenten bekannt gegeben

Form of exam:written
Registration for exam:FlexNow
Duration:90min

goals

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

content

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).

requirements

keine

recommended knowledge

Grundlagen der Informatik

literature

  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