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

No Trackbacks

Comments

Display comments as Linear | Threaded

Markus Kohler on :

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 on :

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

Add Comment

BBCode format allowed
Enclosing asterisks marks text as bold (*word*), underscore are made via _word_.
E-Mail addresses will not be displayed and will only be used for E-Mail notifications.
To leave a comment you must approve it via e-mail, which will be sent to your address after submission.

To prevent automated Bots from commentspamming, please enter the string you see in the image below in the appropriate input box. Your comment will only be submitted if the strings match. Please ensure that your browser supports and accepts cookies, or your comment cannot be verified correctly.
CAPTCHA