Markus VoelterThe minimum infrastructure for running languages and modelsIn my last post I wrote about what constitutes a language, and what you might want to call the data structures that don’t. In this one I…Jun 24, 2022Jun 24, 2022
Markus VoelterWhen is something a (domain-specific) language?Customers often ask me: what is a DSL? How is a language different from … and then they mention all kinds of other terms. This is a great…Jun 18, 20221Jun 18, 20221
Markus VoelterThinking vs. CodingWhen I was growing up as a programmer, it was the time of object-oriented-everything. You were first supposed to do object-oriented…Jun 5, 20221Jun 5, 20221
Markus VoelterWhy documents shouldn’t be the basis of a domain analysisDSL design requires that you first understand the domain for which you want to build the language, so the analysis of how stuff works is a…Apr 22, 2022Apr 22, 2022
Markus VoelterIntroducing a tool successfullyA couple of concrete steps to takeMar 26, 2022Mar 26, 2022
Markus VoelterWhy it is so hard to change established processes in organizationsOr why so many DSL projects fail for non-technical reasonsNov 16, 2021Nov 16, 2021
Markus VoelterThe split brain of DSLsWhy it isn’t enough for a DSL to just capture the domain.Oct 27, 2021Oct 27, 2021
Markus VoelterThe Language Testing TriangleI often get the question: how do you test a language — or more specifically, a language implementation in a tool like MPS or Xtext. That’s…Sep 21, 20211Sep 21, 20211
Markus VoelterTool Lock-in vs. Semantic Lock-inThere’s a lot of discussion about lock-in relative to vendors and tools. I am confronted with these discussions in the context of…Sep 10, 20214Sep 10, 20214
Markus VoelterWhy does everybody hate programming (and why this must change)?DSLs and Subject Matter ExpertsAug 29, 20213Aug 29, 20213