Episode 27: Interne DSLs
Eine Episode über interne DSLs, also domänenspezifische Sprachen, die in eine bestehende Programmiersprache eingebettet werden.
- Alexander Neumann
In dieser Episode diskutieren Markus Völter und Stefan Tilkov über interne DSLs, also domänenspezifische Sprachen, die in eine bestehende Programmiersprache eingebettet werden. Neben der Definition und der Abgrenzung zu externen DSLs und "normalen" APIs werden die Voraussetzungen diskutiert, die Programmiersprachen mit sich bringen müssen, um für interne DSLs geeignet zu sein. Als Beispiele dienen die Implementierung solcher DSLs mit Lisp, CLOS, Ruby, Makro-Systemen à la Converge, Clojure, Scala, Groovy und die Template-Metaprogrammierung in C++. Schließlich besprechen die beiden Podcaster Vor- und Nachteile von internen DSLs und liefern ein paar Empfehlungen, wann interne bzw. externe DSLs besser geeignet sind.
Empfohlener redaktioneller Inhalt
Mit Ihrer Zustimmmung wird hier ein externer Podcast (Podigee GmbH) geladen.
Ich bin damit einverstanden, dass mir externe Inhalte angezeigt werden. Damit können personenbezogene Daten an Drittplattformen (Podigee GmbH) übermittelt werden. Mehr dazu in unserer Datenschutzerklärung.
Shownotes:
- CLOS
- Ruby
- Converge
- Clojure
- Scala
- Andrej Alexandrescu; Modern C++ Design, Generic Programming and Design Patterns Applied; Addison-Wesley Longman, 2001
- ScalaModules
- Growing a Language, by Guy Steele
- Domain-specific Languages in Lisp
(ane)