Another family of computer languages, which will be in
focus of our attention, is the family of domain-specific
languages. Domain-specific languages (DSLs) are computer
languages designed for a specific class of problems and for
particular application domains [2], [3]. They can be dedicated
to a particular problem domain, a particular problem
representation technique or a particular solution technique. The
basic idea behind DSLs is to offer means which would allow
expressing solutions in the idioms and at the abstraction level
of the problem domain. The consequence is that domain
experts (or qualified users) can express, validate or modify
solutions described in a particular DSL. They might be
designed with the intention to be [3], [4]: