The 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
When 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
Thinking 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
Why 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
Why it is so hard to change established processes in organizationsOr why so many DSL projects fail for non-technical reasonsNov 16, 2021Nov 16, 2021
The split brain of DSLsWhy it isn’t enough for a DSL to just capture the domain.Oct 27, 2021Oct 27, 2021
The 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
Tool 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
Why does everybody hate programming (and why this must change)?DSLs and Subject Matter ExpertsAug 29, 20213Aug 29, 20213