What Is ADomain
Program-Transformation.Org: The Program Transformation Wiki
From the
DSLAnnotatedBibliography:
- Our definition of DomainSpecificLanguages inherits the vagueness of one of its defining terms: problem domain. Rather than attempting to define this volatile notion as well, we list and categorize a number of domains for which DSLs have actually been built.
The
DSLAnnotatedBibliography also refers to the "Domain as a set of systems" perspective adopted in the
SoftwareReuse and
DomainEngineering communities.
GenerativeProgramming, p. 34, is more courageous, and defines a
domain as
an area of knowledge which:
- is scoped to maximize the satisfaction of the requirements of its stakeholders
- includes a set of concepts and terminology understood by practitioners in that area; and
- includes the knowledge of how to build software systems (or parts of software systems) in that area
SemanticDesigns defines a
domain as
a formal system of notation having a formal semantics. Their
DMSSoftwareReengineeringToolkit supports this notion directly, by enabling a
DomainEngineer? to define notations directly, and to define semantics via various means, including attribute evaluators for analyzers and program transformations as axioms and/or implementation methods. Typically one defines a domain for practical reasons, and so these tend to closely match the
GenerativeProgramming definition, above, in intent.
CategoryDSL |
ArieVanDeursen - 11 May 2001