We consider (a slight v ariant of) the ccs calculus, and we analyze two operational semantics de ned in the literature: the rst exploits Proved Transition Systems (pts) and the second Rewriting Logic (rl). We s h o w that the interleaving interpretation of both semantics agree, in that they de ne th
Semantics, Modularity, and Rewriting Logic
โ Scribed by Peter D. Mosses
- Publisher
- Elsevier Science
- Year
- 1998
- Tongue
- English
- Weight
- 872 KB
- Volume
- 15
- Category
- Article
- ISSN
- 1571-0661
No coin nor oath required. For personal study only.
โฆ Synopsis
A complete formal semantic description of a practical programming language (such as Java) is likely to be a lengthy document, regardless of which semantic framework is being used. Good modularity of the description is important to the person(s) developing it, to facilitate reuse, change, and extension. Unfortunately, the conventional versions of the major semantic frameworks have rather poor modularity.
In this paper, we first recall some approaches that improve the modularity of denotational semantics, namely action semantics, modular monadic semantics, and a hybrid framework that combines these: modular monadic action semantics. We then address the issue of modularity in operational semantics, which appears to have received comparatively little attention so far, and report on some preliminary investigations of how one might achieve the same kind of modularity in structural operational semantics as the use of monad transformers can provide in denotational semantics - this is the main technical contribution of the paper. Finally, we briefly consider the representation of structural operational semantics in rewriting logic, and speculate on the possibility of using it to interpret programs in the described language. Providing powerful meta-tools for such semantics-based interpretation is an interesting potential application of rewriting logic; good modularity of the semantic descriptions may be crucial for the practicality of using the tools.
Much of the paper consists of (very) simple examples of semantic descriptions in the various frameworks, illustrating the degree of reformulation needed when extending the described language - a strong indicator of modularity. Throughout, it is assumed that the reader has some familiarity with the concepts and notation of denotational and structural operational semantics. Familiarity with the basic notions of monads and monad transformers is not a prerequisite.
๐ SIMILAR VOLUMES
Generalized parsing technology provides the power and flexibility to attack realworld parsing applications. However, many programming languages have syntactical ambiguities that can only be solved using semantical analysis. In this paper we propose to apply the paradigm of term rewriting to filter a
Communication between distributed objects may have to be protected against random failures and malicious attacks; also, communication timeliness may be essential or highly desired. Therefore, a distributed application often has to be extended with communication services providing some kind of fault-