Variable Domain-specific Software Languages with DjDSL Design and Implementation
An understanding of software-engineering basics (architecture, design, implementation, testing) and software patterns is essential. Readers should especially be familiar with the basics of object-oriented modelling (UML, MOF, Ecore) and programming (e.g., Java).
Main Author: | |
---|---|
Format: | eBook |
Language: | English |
Published: |
Cham
Springer International Publishing
2020, 2020
|
Edition: | 1st ed. 2020 |
Subjects: | |
Online Access: | |
Collection: | Springer eBooks 2005- - Collection details see MPG.ReNa |
Summary: | An understanding of software-engineering basics (architecture, design, implementation, testing) and software patterns is essential. Readers should especially be familiar with the basics of object-oriented modelling (UML, MOF, Ecore) and programming (e.g., Java). The three subsequent chapters are devoted to the key conceptual and technical contributions of DjDSL: Chapter 3 (“Variable Language Models”) explains how to design and implement the abstract syntax of a DSL in a variable manner. Chapter 4 (“Variable Context Conditions”) then provides the means to refine an abstract syntax (language model) by using composable context conditions (invariants). Next, Chapter 5 (“Variable Textual Syntaxes”) details solutions to implementing variable textual syntaxes for different types of DSL. In closing, Chapter 6 (“A Story of a DSL Family”) shows how to develop a mixed DSL in a step-by-step manner, demonstrating how the previously introduced techniques can be employed in an advanced example of developing a DSL family. The book is intended for readers interested in language-oriented as well as model-driven software development, including software-engineering researchers and advanced software developers alike. This book details the conceptual foundations, design and implementation of the domain-specific language (DSL) development system DjDSL. DjDSL facilitates design-decision-making on and implementation of reusable DSL and DSL-product lines, and represents the state-of-the-art in language-based and composition-based DSL development. As such, it unites elements at the crossroads between software-language engineering, model-driven software engineering, and feature-oriented software engineering. The book is divided into six chapters. Chapter 1 (“DSL as Variable Software”) explains the notion of DSL as variable software in greater detail and introduces readers to the idea of software-product line engineering for DSL-based software systems. Chapter 2 (“Variability Support in DSL Development”) sheds light on a number of interrelated dimensions of DSL variability: variable development processes, variable design-decisions, and variability-implementation techniques for DSL. |
---|---|
Physical Description: | XXII, 297 p. 245 illus online resource |
ISBN: | 9783030421526 |