Domain-specific languages
The concept of creating your own domain-specific language (DSL) is nothing new and has been done for years by companies. This can be a very efficient way to include your domain experts in the mix and provide a way for them to contribute code in a language that is more familiar to them. The code they write is typically then on a much higher level and has a vocabulary that is supported by lower-level code constructs, which are actually doing the heavy lifting.
Think of this as a programming language and a compiler for your business, expressing your business problems.
It could also be used for technical aspects and not just for the business side – for instance, if you have complex state machines or workflows that have their own vocabulary and you want to make it into a language that is easier to reason about. You could also imagine that the language is represented in a well-known file format such as JSON, YAML, or even Excel.
The purpose of going...