The development of domain-specific languages (DSLs) is considered by many authors as a hard task. To simplify the design of DSLs we describe a design pattern based on the combinators technique, which can also provide guidelines for previous domain analysis phase because it is based on equational reasoning over the domain knowledge. Combinators is a common technique from functional programming to write programs. It was used many times to implement domain-specific embedded languages (DSELs) but that implementation approach is not the only one. In this paper we present the pattern together with the underlying and basic ideas behind it. We also show benefits of using it and illustrate the use of this pattern with some examples.
['Pablo Andrés Barrientos', 'Pablo Lopez']
Developing DSLs using combinators. A design pattern