Domain Specific Languages
Jetzt so kurz vor Weihnachten beschäftigt mich ein interessantes Thema, welches das Potenzial hat die Softwareentwicklung an einigen Stellen stark zu vereinfachen: DSL, genauer gesagt Domain Specific Languages. Darunter versteht man eine auf ein Problem zugeschnittene Sprache, wobei Sprache hier nicht unbedingt eine typische Text-Sprache wie Java sein muss. Es kann sich genauso gut um eine grafische Repräsentation handeln.
Jeder von uns hat schon mit einer DSL gearbeitet, wir haben es nur nicht mitbekommen
. Denn genau genommen sind SQL als auch RegEx zwei DSLs, die besonders ausdrucksstark sind in ihrer Domäne. Mit einer RegEx kann ich String-Muster definieren, deren Programmierung in einer “normalen” Programmiersprache dutzende Zeilen benötigen würde. Für Abfragen aus relationalen Datenbanken eignen sich RegEx aber natürlich nicht, daher sagt man die Sprache ist auf eine Domäne – ihr Arbeitsgebiet – beschränkt.
