Hallo,
ich habe hobbymäßig einen kleinen Skript-Parser geschrieben. Das Ziel ist es einen ganzen Interpreter auf die Beine zu stellen der in bestehende C#-Applikationen eingepflanzt werden soll.
Zur Zeit funktioniert nur das Text-Parsing. Der Parser geht zeichenweise und rekursiv vor wobei die Sprache nur zwei Elemente kennt. Ausdrücke und Attribute. Ausdrücke sind sowas wie Unterprogramme und Attribute sind entweder Flags oder Namen/Wertpaare, getrennt durch einen Doppelpunkt.
Ausdrücke bestehen wahlweise nur aus einem Namen oder zusätzlich noch Attribute und/oder Sub-Ausdrücke. Ausdrücke stehen in Klammern wobei die erste Zeichenkette nach der Klammer der Name des Ausdrucks sein muss.
Aus dem Quelltext wird ein Expression-Tree aufgebaut.
So sieht das ganze in Aktion aus:
As a man thinketh in his heart, so he is.
Das zugehörige Projekt:
As a man thinketh in his heart, so he is.