Journal of the ACM (JACM)
Denotational semantics: a methodology for language development
Denotational semantics: a methodology for language development
Systematic software development using VDM (2nd ed.)
Systematic software development using VDM (2nd ed.)
Notions of computation and monads
Information and Computation
The essence of functional programming
POPL '92 Proceedings of the 19th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
The RAISE specification language
The RAISE specification language
A theory of communicating processes with value passing
Information and Computation
Modular Denotational Semantics for Compiler Construction
ESOP '96 Proceedings of the 6th European Symposium on Programming Languages and Systems
The RAISE Specification Langiage: A Tutorial
VDM '91 Proceedings of the 4th International Symposium of VDM Europe on Formal Software Development-Volume 2: Tutorials
Denotational semantics and refinement
IW-FM'97 Proceedings of the 1st Irish conference on Formal Methods
Facilitating modular property-preserving extensions of programming languages
IW-FM'98 Proceedings of the 2nd Irish conference on Formal Methods
Hi-index | 0.00 |
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.