Abstract

Today, programming or specification languages are often extended in order to customize them for a particular application domain or to refine the language definition. The extension of a semantic model is often at the centre of such an extension. We will present a framework for linking basic and extended models. The example which we are going to use is the RSL concurrency model. The RAISE specification language RSL is a formal wide-spectrum specification language which integrates different features, such as state-basedness, concurrency and modules. The concurrency features of RSL are based on a refinement of a classical denotational model for process algebras. A modification was necessary to integrate state-based features into the basic model in order to meet requirements in the design of RSL. We will investigate this integration, formalising the relationship between the basic model and the adapted version in a rigorous way. The result will be a modular composition of the basic process model and new language features, such as state-based features or input/output. We will show general mechanisms for integration of new features into a language by extending language models in a structured, modular way. In particular, we will concentrate on the preservation of properties of the basic model in these extensions.

Highlights

  • We investigate how a semantics extension can be constructed such that the extension laws are satisfied

  • A reformulation in terms of category theory is, though, possible. The advantage of both approaches is that an abstract construct is provided which is a concise description of a feature and which can be represented in a number of concrete structures

  • Our approach can be seen as part of a framework for formal language engineering, which aims at flexible combination and integration of specification languages

Read more

Summary

Integration through Extension

The specification and development of complex software systems might require the use of different specification features, assembled into a customised language. We will present a framework which supports the systematic, modular integration of denotationally defined formal models of features by stepwise, property-preserving extension of the language semantics. Bolignano and Debabi’s paper [BD92] is the basis for this investigation They describe the extension of a simple denotational model for CSP-like process algebras based on the acceptances model [Hen85] to meet the requirements in the development of RAISE. We will follow [BD92] and investigate their development of a refined model in a more rigorous and formal way considering aspects of modularity in design and extension of language models or languages. We will provide a selection of common templates of extension which support conservative, property-preserving extensions By providing such templates, we will facilitate the process of adapting domain and function definitions of a basic model to meet new requirements.

Basic Model and Language
Principles of Extension
Motivation
Behaviour Preservation
Semantics Extensions
Extension Templates
Domain Constraint Preserving Extensions
Partitioning Events
Partitioning Template
Behavioural Extension
Extending the Domain Constraint
Values and States
Injection and Indexing Templates
Related Work
Conclusions

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.