Compilerbau WiSe 2002/03

Übungsblatt 3

Aufgabe 1

Geben Sie für die wie folgt beschriebenen Ausdrücke entsprechende reguläre Ausdrücke in der Notation der Vorlesung und als Eingabe für den lexikalischen Analysator (f)lex an:
  1. Gleitkommazahlen ohne Exponent, in deutscher Notation (z.B. 12,456)
  2. 10-stellige Gleitkommazahlen mit Exponent, in "wissenschaftlicher" Notation (z.B. -1.2345679890E+99)
  3. Variablennamen in Java, php oder perl
  4. eine Zeichenreihe (string) in Java oder C
(Zus. Information: flex-Manual)

Aufgabe 2

Gegeben sie folgendes Problem:
An Ihrem Fachbereich liegen die Ankündigungen zu Lehrveranstaltungen im unten angehängten speziellen TeX-Format vor. Sie wollen Eingabedateien dieses Formats in html-Format umschreiben oder in einer Datenbank speichern. Geben Sie dazu zunächst eine Grammatik im EBNF oder yacc-Format an, die die Eingaben korrekt erkennt.

TeX-Kommandos zu Aufgabe 2. Dozent darf nur einmal auftreten, dann folgen jeweils pro Veranstaltung ernst die Angaben zur Veranstaltung, und dann per Schlüsselkommando die Angabe der Veranstaltung.

\Dozent [1] // nur einmal pro Datei
\Mitarbeiter [1]
\UebungenMit [1]
\Thema [1]
\Zeit [1]
\Ort [1]
\ZeitOrt [1]
\Beginn [1]
\Belegnummer [1]
\Hoererkreis [1]
\Adressaten [1]
\Interessenten [1]
\Zuordnung [1]
\Vorkenntnisse [1]
\Inhalt [1]
\Uebungsschein [1]
\Leistungsnachweis [1]
\Seminarschein [1]
\Anschlussveranstaltung [1]
\Anmeldung [1]
\Vorbesprechung [1]
\Sprechstunde [1]
\Sonstiges [2]
\Liteintrag [2]
\Literatur [1] // enhält Unterpunkte \Liteintrag
\LITERATUR [1]  
\Vorlesung [1] // RADIO!! - Veranstaltung
\Seminar [1] // RADIO!! - Veranstaltung
\Oberseminar [1] // RADIO!! - Veranstaltung
\Arbeitsgruppe [1] // RADIO!! - Veranstaltung
\Arbeitsgemeinschaft [1] // RADIO!! - Veranstaltung
\Ankuendigung [1]  // RADIO!! - Veranstaltung
      

Beispiel der Eingabe zu Aufgabe 2

\Dozent{Dr. Dietmar Lammers}
% zwei wirklich kleine Beispiele ... 

% Robotsysteme
\Mitarbeiter{Robinson Crusoe}
\ZeitOrt{No, Do 13.15h, SR9}
\Inhalt{Wir beschäftigen uns mit der 
Realisierung von physisch verteilen mobilen Agentensystemem 
mittels Lego-Robotern.}
\Arbeitsgruppe{Robotsysteme}

% WebDevelopment
\Mitarbeiter{Bill Gates}
\ZeitOrt{wird noch bekanntgegeben}
\Vorbesprechung {fällt diesmal aus}
\Inhalt{Bau eines {\bf sicheren} WebServer-Systems}
\Literatur{
  \Liteintrag{FSF}{Apache und tomcat}
  \Liteintrag{W3}{JSP and the Sandbox}
}
\Seminar{\htmpaddnormallink{/u/lammers/WWW/EDU/ws04/WebDevelop/}{Web Development}}
      

Dietmar Lammers
Last modified: Wed Nov 12 14:50:40 CET 2003