Concrete syntax: a multi-paradigm modelling approach (original) (raw)

TCS: a DSL for the specification of textual concrete syntaxes in model engineering

2006

Domain modeling promotes the description of various facets of information systems by a coordinated set of domain-specific languages (DSL). Some of them have visual/graphical and other may have textual concrete syntaxes. Model Driven Engineering (MDE) helps defining the concepts and relations of the domain by the way of metamodel elements. For visual languages, it is necessary to establish links between these concepts and relations on one side and visual symbols on the other side. Similarly, with textual languages it is necessary to establish links between metamodel elements and syntactic structures of the textual DSL. To successfully apply MDE in a wide range of domains we need tools for fast implementation of the expected growing number of DSLs. Regarding the textual syntax of DSLs, we believe that most current proposals for bridging the world of models (MDE) and the world of grammars (Grammarware) are not completely adapted to this need. We propose a generative solution based on a DSL called TCS (Textual Concrete Syntax). Specifications expressed in TCS are used to automatically generate tools for model-to-text and text-to-model transformations. The proposed approach is illustrated by a case study in the definition of a telephony language.

Reusable Textual Styles for Domain-Specific Modeling Languages ⋆

2019

Domain-specific languages enable concise and precise formalization of domain concepts and promote direct employment by domain experts. Therefore, syntactic constructs are introduced to empower users to associate concepts and relationships with visual textual symbols. Model-based language engineering facilitates the description of concepts and relationships in an abstract manner. However, concrete representations are commonly attached to abstract domain representations, such as annotations in metamodels, or directly encoded into language grammar and thus introduce redundancy betweenmetamodel elements and grammar elements. In this work we propose an approach that enables autonomous development and maintenance of domain concepts and textual language notations in a distinctive and metamodel-agnostic manner by employing style models containing grammar rule templates and injection-based property selection. We provide an implementation and showcase the proposed notationspecification langua...

Composing Visual Syntax for Domain Specific Languages

2009

With the increasing interest in metamodeling techniques for Domain Specific Modeling Languages (DSML) definition, there is a strong need to improve the language modeling process. One of the problems to solve is language evolution. Possible solutions include maximizing the reuse of metamodel patterns, composing them to form new, more expressive DSMLs. In this paper we improve the process of rapid prototyping of DSML graphical editors in meta-modeling tools, by defining composition rules for the graphical syntax layer. The goal is to provide formally defined operators to specify what happens to graphical mappings when their respective metamodels are composed. This improves reuse of Domain Specific Modeling Languages definitions and reduces development time.

Reusable Textual Notations for Domain-Specific Languages

2019

Domain-specific languages enable concise and precise formalization of domain concepts and promote direct employment by domain experts. Therefore, syntactic constructs are introduced to empower users to associate concepts and relationships with visual textual symbols. Model-based language engineering facilitates the description of concepts and relationships in an abstract manner. However, concrete representations are commonly attached to abstract domain representations, such as annotations in metamodels, or directly encoded into language grammar and thus introduce redundancy betweenmetamodel elements and grammar elements. In this work we propose an approach that enables autonomous development and maintenance of domain concepts and textual language notations in a distinctive and metamodel-agnostic manner by employing style models containing grammar rule templates and injection-based property selection. We provide an implementation and showcase the proposed notationspecification langua...

MetaLanguage: a Tool for Creating Visual Domain-Specific Modeling Languages

2012

The technologies based on applying a metamodeling and domain-specific languages are widely used at information systems developing. There are many different tools for creating graphical domain-specific language editors with a possibility of determining user's graphical notations. However they possess disadvantages. The MetaLanguage system is designed to eliminate some of these shortcomings. MetaLanguage is a language workbench which provides creation of visual dynamic adaptable domain-specific modeling languages used in the development of information systems. In paper the approach to development of MetaLanguage DSM-platform is considered. Basic metalanguage constructions of this system are described. The mathematical multilevel domain model with usage of pseudo-metagraphs is constructed. Definitions of the graph and metagraph are given. The algorithm of vertical models transformations is described. The architecture and implementation of the development environment of MetaLanguage toolkit is presented.

A Framework for Defining Domain-Specific Visual Languages

For many problem domains domain-specific languages (DSLs) offer users more appropriate notations and abstractions in which to model systems when compared with general purpose programming languages. These benefits can often be amplified if a visual notation is used instead of textual notations. In many problem domains visual notations are preferred by practitioners as they often are the most intuitive representation of a problem. However, the lack of supporting infrastructure for constructing, implementing, and maintaining visual languages in general and domain-specific visual languages (DSVLs) in particular has been an impediment to gaining wider acceptance. This paper describes techniques used in the Moses tool-suite for defining the syntax and semantics of DSVLs, which are very general, yet are built on a few very simple concepts and are therefore easy to apply.

Multi-Paradigm Language Engineering and Equation-Based Object-Oriented Languages

2008

Models are invariably used in Engineering (for design) and Science (for analysis) to precisely describe structure as well as behaviour of systems. Models may have components described in different formalisms, and may span different levels of abstraction. In addition, models are frequently transformed into domains/formalisms where certain questions can be easily answered. We introduce the term “multiparadigm modelling” to denote the interplay between multi-abstraction modelling, multi-formalism modelling and the modelling of model transformations. The foundations of multi-paradigm modelling will be presented. It will be shown how all aspects of multiparadigm modelling can be explicitly (meta-)modeled enabling the efficient synthesis of (possibly domain-specific) multi-paradigm (visual) modelling environments. We have implemented our ideas in the tool AToM 3 (A Tool for Multi-formalism and Meta Modelling) [3]. Over the last decade, Equation-based Object-Oriented Languages (EOOLs) have...

A component-based approach for specifying DSML's concrete syntax

Proceedings of the Second Workshop on Graphical Modeling Language Development - GMLD '13, 2013

Model-Driven Engineering (MDE) encourages the use of graphical modeling tools, which facilitate the development process from modeling to coding. Such tools can be designed using the MDE approach into meta-modeling environments called metaCASE tools.

The power of rich syntax for model-based development

2008

During the last century, many general purpose programming languages have been developed, all having rigid syntax and often a von-Neuman view of the world. With the rise of model-based development this changes: Featureoriented programming, domain specific languages, and platform-based design use rich and custom syntaxes to capture domain specific abstractions, refinement mappings, and design spaces. In this paper we show how a formalization of rich syntax can be used to compose abstractions, validate refinement maps, and construct design spaces. We describe a tool FORMULA for computing these properties, and present a series of examples from automotive embedded systems. Car Maneuvering Cruise Control Acceleration Deceleration Manual Automatic ABS Brake-By-Wire