Universität München,
Institut für Informatik,
Lehr- und Forschungseinheit für Programmierung und Softwaretechnik
JavaCC ist ein Tool
der Firma Sun Microsystems , daß aus einer
kontextfreien Grammatik in geeigneter Form einen Compiler in Java-Quellcode
erstellt, welcher
diese Grammatik verarbeiten kann. Da diese Funktionalität den
gängigen Compiler-Generator Tools LEX und YACC entspricht, sollen
insbesondere die Unterschiede zwischen den beiden Ansätzen kurz beschrieben
werden.
Zur Zeit läßt JavaCC keine linksrekursiven Grammatiken zu.
Diese werden erst in einem späteren Release
erlaubt sein. Deshalb soll in der Arbeit ein geeignetes Tool entwickelt werden,
daß eine Grammatikbeschreibung mit linksrekursiven Produktionsregeln
in eine äquivalente rekursionsfreie Grammatik übersetzt.
Um später einmal in Quellcode-Archiven auch nach Programmstrukturen
suchen zu können, soll ein geeignetes Verfahren für die persistente
Speicherung von Parse-Bäumen enwickelt werden. Ebenso soll es möglich
sein, einen derart abgelegten Parsebaum in geeigneter Weise darstellen zu
können.
Der gesamte Ablauf soll dann am Beispiel von LEGO
Quellcode demonstrierbar sein.