Skip to content

DSL und der gefürchtete Parser

Martin Fowler schreibt gerade an einem Buch über Domain Spezifische Sprachen (DSL), und in diesem Zusammenhang produziert er interessante Blog Artikel. Ich möchte hier auf einen Artikel von Ihm hinweisen, mit dem Titel "Parser Fear". Amüsantes Zitat am Rande:
So why is there an unreasonable fear of writing parsers for DSLs? I think it boils down to two main reasons.
  • You didn't do the compiler class at university and therefore think parsers are scary.
  • You did do the compiler class at university and are therefore convinced that parsers are scary.
The first is easy to understand, people are naturally nervous of things they don't know about. The second reason is the one that's interesting. What this boils down to is how people come across parsing in universities. Parsing is usually only taught in a compiler class, where the context is to parse a full general purpose language. Parsing a general purpose language is much harder than parsing a Domain Specific Language, if nothing else because the grammar will be much bigger and often contain nasty wrinkles which you can avoid with a DSL.
Ist sicherlich interessant zu sehen was Fowler zusammenbrauen wird. Eine Sache dich ich übrigens interessant finde ist, dass er sich um das Thema DSL Workbenches im Buch "drückt" und selbst ANTLR als Basis verwendet. Immerhin gibt es doch einige sehr leistungsfähige Projekte zum Beispiel Eclipse Modelling oder Visual Studio DSL Tools.

Trackbacks

Keine Trackbacks

Kommentare

Ansicht der Kommentare: Linear | Verschachtelt

Markus Kohler am :

Hallo Bernd, IMHO drückt sich Fowler davor eine DSL Workbench zu benutzen weil das der schwache Punkt von "externen" DSL's (benutzen nicht die Syntax einer Programmiersprache) ist. Das Problem mit "externen" DSL's ist das die ganze Infrastrukutr, die eine IDE heute bietet, normalerweise erst mal nicht mehr für die DSL funktioniert. Ich bin daher kein Fan von "externen" DSL's, sondern ich würde immer "interne" DSL's, die in einer "Standard" Programmiersprache geschrieben sind bevorzugen. Gruss, Markus

Bernd Eckenfels am :

Hmm Fowler lobt die einfachen DSLs und sagt man soll dafür einen Parser bauen. Wenn man das aber jetzt nicht mit ANTLR macht sondern mit den Eclipse Modeliing Tools dann bekommt man Editor, Validator, Templating und sogar Outline View einfach so geschenkt. Von daher bietet es sich schon an. Nachteil den ich sehe ist, dass das ganze noch ein sehr schnell bewegendes Ziel ist - grade für ein Buch. Aber die Parser Generator Hemmschwelle ist damit jedenfalls behoben (was ich so von Demos gesehen habe). Gruss Bernd

Kommentar schreiben

BBCode-Formatierung erlaubt
Umschließende Sterne heben ein Wort hervor (*wort*), per _wort_ kann ein Wort unterstrichen werden.
Die angegebene E-Mail-Adresse wird nicht dargestellt, sondern nur für eventuelle Benachrichtigungen verwendet.
Um einen Kommentar hinterlassen zu können, erhalten Sie nach dem Kommentieren eine E-Mail mit Aktivierungslink an ihre angegebene Adresse.

Um maschinelle und automatische Übertragung von Spamkommentaren zu verhindern, bitte die Zeichenfolge im dargestellten Bild in der Eingabemaske eintragen. Nur wenn die Zeichenfolge richtig eingegeben wurde, kann der Kommentar angenommen werden. Bitte beachten Sie, dass Ihr Browser Cookies unterstützen muss, um dieses Verfahren anzuwenden.
CAPTCHA