1,721,157 research outputs found
Montages: Specifications of Realistic Programming Languages
Montages are a new way of describing all asp ects of programming languages formally. Such specifications are intelligible for a broad range of people involed in programming language design and use. In order to enhance readability we combine visual and textual elements to yieald specifications similar in structure, length, and complexity to those in common language manuals, but with formal semantics. The formal semantics is based on Gurevich's Abstract State Machines (formerly called Evolving Algenbras)
Model Differences in the Eclipse Modeling Framework
Increasingly, recording the various kinds of design-level structural evolution that a system undergoes throughout its entire
life-cycle is gaining a fundamental importance and cannot be neglected in software modeling and development. In this
respect, an interesting and useful operation between the designs of subsequent system versions is the difference management consisting in calculation, representation, and visualization. This work presents EMF Compare, an approach to
model difference calculation and representation for the EMF (Eclipse Modelling Framework). Apart from enhancing the
rank of model differences to that of first-class artifacts according to the "everything is a model" principle, the approach
presents several properties which are discussed according to a conceptual framework
An Algebraic Theory of Class Specifications
The notion of class (or object pattern) as defined in most object-oriented languages is forrnahzed using known techniques from algebraic specifications, Inheritance can be viewed as a relation between classes, which suggests how classes can be arranged in hierarchies. The hierarchies contain two kinds of reformation: on the one hand, they indicate how programs are structured and how code is shared among classes; on the other hand, they give information about compati- ble assignment rules, which are based on subtyping. In order to distinguish between code sharing, which is related to lmplementatlonal aspects, and functional speclalizatlon, which is connected to the external behavior of objects, we introduce an algebraic specification-based formalism, by which one can specify the behavior of a class and state when a class inherits another one. It is shown that reusing inheritance can be reduced to specialization inheritance with respect to a virtual class The class model and the two distinct aspects of inheritance allow the defimtion of clean interconnection mechanisms between classes leading to new classes which mherlt from old classes them correctness and their semantics
- …
