Saturday, January 23, 2010

Domain-Specific Language(DSL)

In software development, a domain-specific language (DSL) is a programming language or specification language dedicated to a particular problem domain, a particular problem representation technique, and/or a particular solution technique. The concept isn't new—special-purpose programming languages and all kinds of modeling/specification languages have always existed, but the term has become more popular due to the rise of domain-specific modeling.The opposite is:a general-purpose programming language, such as C or Java, or a general-purpose modeling language such as the Unified Modeling Language (UML). Examples of domain-specific languages include spreadsheet formulas and macros, YACC grammars for creating parsers, regular expressions for specifying lexers, the Generic Eclipse Modeling System for creating diagramming languages, Csound, a language for digital synthesis, and the input languages of GraphViz and GrGen, software packages used for graph layout and graph rewriting.Creating a domain-specific language (with software to support it) can be worthwhile if the language allows a particular type of problems or solutions to them to be expressed more clearly than pre-existing languages would allow, and the type of problem in question reappears sufficiently often. Language Oriented Programming considers the creation of special-purpose languages for expressing problems a standard part of the problem solving process.

Source: https://en.wikipedia.org/wiki/Domain-specific_language

No comments:

Post a Comment