Projectional Language Workbenches as a Foundation for Product Line Engineering

نویسنده

  • Markus Völter
چکیده

In this paper I explain the benefits of projectional language workbenches for product line engineering. The ability to extend programming languages with domain specific concepts, mix programs (i.e. descriptions written in general purpose languages) and models (i.e. descriptions expressed with DSLs) and also overlay configurative variability to both of these promises highly integrated and productive tools for product line development. 1 Variability in PLE In the context of product line engineering, DSLs are used to bind variability. We distinguish between two kinds of variability: structural and non-structural. Structural variability is described using creative construction DSLs, whereas non-structural variability can be described using configuration tools. Structural variability is unbounded, whereas configuration variability is usually bounded. Figure 1 illustrates the spectrum of languages commonly used for expressing and binding variability, reusing an illustration by Krzysztof Czarnecki [6]. Figure 1 Spectrum of Variability Let's look at two well-known ways of representing variability. Figure 2 shows the meta model of a creative construction DSL. Any number of models can be defined, by instantiating meta model elements. Figure 3 presents an example using the familiar concrete syntax of UML.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Implementing Feature Variability for Models and Code with Projectional Language Workbenches

Product line engineering deals with managing and implementing the variability among a set of related products. We distinguish between two kinds of variability: configuration and customization. Customization variability can be described using programming language code or creative construction DSLs, whereas configuration variability is described using configuration based approaches, such as featu...

متن کامل

Language Modularization and Composition with Projectional Language Workbenches illustrated with MPS

The language community has had a discussion about different styles of languages for a long time: big languages with many specific concepts (ABAP, Cobol), or small languages with few, but very powerful and orthogonal concepts (Lisp, Smalltalk)? With the advent of projectional language workbenches a new class of language becomes possible that can combine the best of both approaches: modular langu...

متن کامل

Embedded Software Development with Projectional Language Workbenches

This paper describes a novel approach to embedded software development. Instead of using a combination of C code and modeling tools, we propose an approach where modeling and programming is unified using projectional language workbenches. These allow the incremental, domainspecific extension of C and a seamless integration between the various concerns of an embedded system. The paper does not p...

متن کامل

A Domain-Specific Language and Editor for Parallel Particle Methods

Domain-specific languages (DSLs) are of increasing importance in scientific high-performance computing to reduce development costs, raise the level of abstraction and, thus, ease scientific programming. However, designing DSLs is not easy, as it requires knowledge of the application domain and experience in language engineering and compilers. Consequently, many DSLs follow a weak approach using...

متن کامل

Cedalion A Language Oriented Programming Language

Implementations of language oriented programming (LOP) are typically either language workbenches, which facilitate the development of external domain speci c languages (DSLs) with projectional editors, or host languages for internal DSLs that are parsed. In this work, we present Cedalio a novel approach to LOP, along with a prototyped programming language and workbench implementing our approach...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2010