Syntax und Operatorbäume

Thomas Darimont

Erfahrenes Mitglied
Hallo!

@Tom: Über Namen könnten wir uns endlos streiten ;) Ok, dass die SyntaxErrorException ein Error im Namen hat ist unglücklich. InappropriateBracketException hingegen deutet zu wenig auf den Gebrauch der Exception hin, wie wärs mit dem pedantischem OutOfBalanceParenthesisException?
Damit könnte ich leben. ;-)

Gruß Tom
 

RedWing

Erfahrenes Mitglied
Dabei kannst du die Klammern nur deswegen weglassen, weil die Struktur des Baumes bereits die Information enthält.
Es spielt keine Rolle, da die Grammatik bereits die richtige Struktur enthält,
und aus der wird letztendlich der Ableitungsbaum gebaut...
Das heißt solange die Grammatik richtig ist, kann man die Klammern immer
weg lassen...

Also mal als Zusammenfassung:

Operatorbaum: ist ein abgespeckter Ableitungsbaum ohne den Terminalen:
'(' ')' und ohne allen Nichtterminalen des Ableitungsbaumes
Bei richtigem durchlaufen kann daraus der Ausdruck berechnet werden.

Ableitungsbaum (bzw Syntaxbaum): kann durch ein gegebenes Eingabewort anhand der Grammatik gebildet werden (alle Blätter
entsprechen den Terminalen der Grammatik, alle weiteren Knoten den
Nichtterminalen).
Mit ihm kann ausserdem überprüft werden ob sich das Wort mit
der Grammatik bilden lässt oder nicht, sprich ob es in der Sprache die
die Grammatik beschreibt enthalten ist oder nicht

Grammatik: Legt durch ihre Produktionsregeln die Struktur des Ableitungsbaumes und des daraus resultierenden Operatorbaumes fest
und bestimmt somit letztendlich die Bindungsstärken der Operatoren

Wenn da noch was unvollstänig oder Fehler an der Beschreibung sind bitte
um Korrektur...

Damit auch der Tom weiterhin unter uns weilt :) hab ichs nochmal
ausgebessert (siehe oben)

Für alle die denen noch ein Fehler im code auffällt, bzw mit irgendetwas nich zufrieden sind bitte hier posten und gegebenfalls gleich korrigieren...

Gruß

RedWing
 
Zuletzt bearbeitet: