Uni-GH PBPraktikum Sprachimplementierung mit Werkzeugen WS 1996/97 


Projekt TeX-Pascal


Auror: Thomas Franke
 
TeX-Pascal ist eine Sprache, mit der sich Text-Dokumente auf einfache Art und Weise erstellen lassen sollen. Wie der Name schon andeutet, setzt sie an LaTeX an, und behält damit dessen sämtliche Möglichkeiten bei. Die Idee, die zu TeX-Pascal fuehrte war, den Quelltext zu strukturieren, indem die leicht verständliche und uebersichtliche Pascal-Notation verwendet wird.
 
Der eigentliche Text, der dann auch im Zieldokument zu sehen ist, wird in geschweifte Klammern gesetzt. Fuer die lexikalische Eingabe ist daher die Verwendung eines Scanners notwendig, der auch den als Pascal-Kommentar aufzufassenden, in geschweiften Klammern stehenden beliebigen Text beachtet, so daß dieser in den Zieltext uebernommen werden kann. Fuer den Text lassen sich bestimmte, vordefinierte Eigenschaften festlegen wie Schrift, Größe, etc. Diese gelten dann jeweils fuer den Block, vor dem sie festgelegt worden sind. Die Text-Eigenschaften können also als Bezeichner aufgefasst werden, und mit den Scope Rules des Umgebungsmoduls behandelt werden. Ebenso besitzt jede dieser Eigenschaften einen vordefinierten Typ, so daß bei der Typanalyse nur ueberprueft werden muß, ob der Wert der zugewiesene Eigenschaft damit verträglich ist, d.h. ob z.B. '12' ein gueltiger Wert fuer die Eigenschaft 'Groesse' ist. Die Zieltext-Zusammensetzung beinhaltet keine Schwierigkeiten, wichtig ist nur, daß jeweils bei Betreten und bei Verlassen eines Blocks, die nach den Scope Rules gueltigen Werte für die Text-Eigenschaften neu gesetzt werden.
 

Beispiel


Projektbeschreibungen