Lee, it depends on who the programmer is. If it is a auto sampler product developer, they might want finer control. Even if it is for an end user, I can imaging a number of use cases where the reset and sample commands are too abstract. The point of a DSL is that the language is very close to the domain expert’s lingo. It would be a good conversation to have with a real life auto sampler domain expert.
I just watched that video tonight. It struck me that xtUML can define the semantics of the language. I’m not a DSL expert but I’ve been looking into it a bit. It seems like DSL methods define abstract syntax but the semantics are concrete. How to represent a certain construct is abstract but the semantics are “hard coded” by what the translator. We could use xtUML to formally specify the relationships, both static and dynamic between the abstract syntax objects..