Java Bytecode Generierung im Rahmen eines Softwarepraktikums in Haskell

	Volker Stolz <stolz@i2.informatik.rwth-aachen.de>
	Bad Honnef, Mai 2002

Der Lehrstuhl für Informatik II bietet an der RWTH Aachen ein
Softwarepraktikum in der funktionalen Programmiersprache Haskell
für das Grundstudium (Zweit- und Viertsemester). Bei diesem
Praktikum wird in sieben Teilaufgaben ein Übersetzer für eine einfache
Pascal-ähnliche Sprache namens PSA entwickelt (Scanner & Parser), eine
abstrakte Maschine mit einfachen Stack-Code-Befehlen, für die
Code aus dem PSA-Programm erzeugt wird, ein Web-Frontend für
den Übersetzer und schließlich einige Modifikationen der Ma-
schine, um Ein- und Ausgabe zuzulassen und ihre Laufzeit zu
begrenzen.

Für das Praktikum sind keinerlei Vorkenntnisse in Haskell oder
Übersetzerbau erforderlich. Trotzdem erlernen die Studenten im
Rahmen des Praktikums nicht nur eine neue Programmiersprache und
Wissen über Übersetzerbau, sondern insbesondere auch die
Konzepte der funktionalen Programmierung kennen. Da der erzeugte
Stack Code dem Java Bytecode sehr ähnlich ist, wird ab diesem
Semester zusätzlich als "real world application" eine Java
Class-Datei generiert, welche den Anforderungen des Java Bytecode
Verifiers genügen muß.