posted on Wednesday, June 15, 2005 8:48 AM by Simon Thorneycroft

Domain Specific Languages

Martin Fowler has a very interesting post on Domain Specific Languages. I have long been an advocate of using targeted languages when they clarify a problem domain (having written a few to help business users quickly adapt business logic in an evolving environment). However, it is important not to end up with the language cacophany that Martin mentions in his post.

I think DSL's can provide great benefit used in a wider context with Software Factories (detailed in this book); An especially powerful example of DSL's, applied to the actual process of providing IT solutions. Here, DSL's generate artifacts to feed into the next layer in the solution development process (this generation process can be redone at a later date should requirements change ;-) , without losing any modifications made at the lower level). To give an overly simple example, one could use an analysis DSL to generate artifacts for the design stage with feed in from a recommended set of design patterns (supplied using another DSL). I will be talking more about DSL's and software factories in future posts.

Comments