TY - CONF
T1 - Abstracting Complex Languages through Transformation and Composition
AU - Johannes, Jendrik
AU - Zschaler, Steffen
AU - Fernández, Miguel A.
AU - Castillo, Antonio
AU - Kolovos, Dimitrios S.
AU - Paige, Richard F.
PY - 2009
Y1 - 2009
N2 - Domain-specific languages (DSLs) can simplify the development of complex software systems by providing domain-specific abstractions. However, the complexity of some domains has led to a number of DSLs that are themselves complex, limiting the original benefits of using DSLs. We show how to develop DSLs as abstractions of other DSLs by transfering translational approaches for textual DSLs into the domain of modelling languages. We argue that existing model transformation languages are at too low a level of abstraction for succinctly expressing transformations between abstract and concrete DSLs. Patterns identified in such model transformations can be used to raise the level of abstraction. We show how we can allow part of the transformation to be expressed using the concrete syntax of the concrete DSL.
AB - Domain-specific languages (DSLs) can simplify the development of complex software systems by providing domain-specific abstractions. However, the complexity of some domains has led to a number of DSLs that are themselves complex, limiting the original benefits of using DSLs. We show how to develop DSLs as abstractions of other DSLs by transfering translational approaches for textual DSLs into the domain of modelling languages. We argue that existing model transformation languages are at too low a level of abstraction for succinctly expressing transformations between abstract and concrete DSLs. Patterns identified in such model transformations can be used to raise the level of abstraction. We show how we can allow part of the transformation to be expressed using the concrete syntax of the concrete DSL.
UR - http://www.scopus.com/inward/record.url?scp=77249160851&partnerID=8YFLogxK
U2 - 10.1007/978-3-642-04425-0_41
DO - 10.1007/978-3-642-04425-0_41
M3 - Paper
SP - 546
EP - 550
ER -