Wir werden während der Schulung konkretes DSL-Design anhand von praxisnahen Beispielen üben. Ich bitte deshalb darum, einen Laptop mitzubringen und einige Software zu installieren. Für den ersten Tag reicht erstmal Racket.
Racket: https://download.racket-lang.org/
Ansonsten werden wir brauchen:
JDK: https://www.oracle.com/java/technologies/downloads/
Maven: https://maven.apache.org/download.cgi
IntelliJ MPS: https://www.jetbrains.com/mps/
Xtext/Eclipse: https://www.eclipse.org/downloads/packages/ Dort: "Eclipse IDE for Java and DSL Developers"
Bei Fragen oder Problemen gern Mike Sperber kontaktieren!
Context Mapping eigentlich: Subdomänen-Mapping Domain Storytelling https://domainstorytelling.org/
Abstraktionen für Pipelines aus Operationen (Johannes): http://conal.net/papers/compiling-to-categories/compiling-to-categories.pdf https://www.haskell.org/arrows/
Datalog: https://github.com/racket/datalog
Buch "Algebra-Driven Design" https://leanpub.com/algebra-driven-design
Langium (Xtext-Nachfolger): https://langium.org/
Scoping in R: https://janvitek.org/pubs/dls21.pdf
Blog-Post zu Monaden/Kontrollabstraktion: https://funktionale-programmierung.de/2014/04/10/probability-monad.html