Information Technology Reference
In-Depth Information
refer to more specific literature. There are several important
benefits of defining and creating DSLs:
- They are specific to a domain; thus, they may be used
to interact with stakeholders or clients, who are definitely
not designers or programmers. For instance, requirements
elicitation, spreadsheet computation, resources or energy
consumption are examples of domains where DSLs already
exist.
- They are not designed to express every concept of the
world; thus, the re-use of programs written with DSLs is
simpler and safer than with general purpose languages.
- They are more restricted; some properties related to the
domain can be easily expressed and enforced.
A simple and well-known example is the BNF language for
grammar descriptions. Another example is a DSL for defining
type systems of programming languages, which includes type
checking. By means of such languages, types can be easily
definedandtypecheckingrulescanbewritten.Inthecontextof
SPLE, there is a need for various DSLs. On the one hand there
are those related to capturing development artifacts, such as
requirements or use cases (see a proposal in [RAS 11]). On the
other hand there are those specific to domains where SPLs are
created; e.g. automotive industry, ERP systems, etc.
Generally, a language is defined through its grammar and
semantics [MER 05]. Recently, the use of MDE emerged as an
effective means to define DSLs by means of models; these are
Domain-Specific Modeling Languages.A metamodel defines an
abstract grammar and syntactic constraints;thus,it can easily
represent a DSL. MDE frameworks provide tools to support
the concrete syntax creation and various related activities.
Thus, Domain-Specific Modeling can be seen as the definition
of languages, editors, and generators for particular domains
by means of models. One result of the activities around DSLs,
MDE,and DSM is the raising of software language engineering
as a new research domain.
Search WWH ::




Custom Search