| J. A. Goguen and J. Meseguer. Unifying functional, object-oriented and relational programming with logical semantics. In B. Shriver and P. Wegner, editors, Research Directions in Object-Oriented Programming, pages 417{ 477. MIT Press, 1987. |
....and open frameworks. In this section, we briefly define frameworks and specifications and their model theoretic semantics. A framework F is a full first order logical theory (with identity) with an intended model. The syntax of F is similar to that used in algebraic abstract data types (e.g. [13, 34, 28]) However, whilst an algebraic abstract data type is an initial model ( 12, 15] of its specification, the intended model of F is an isoinitial model. Definition 2.1 A model i is an isoinitial model of F iff, for every other model i of F there is a unique isomorphic embedding h : i i. ....
J.A. Goguen and J. Meseguer. Unifying functional, object-oriented and relational programming with logical semantics. In B. Shriver and P. Wegner, editors, Research Directions in Object-Oriented Programming , pages 417--477. MIT Press, 1987.
....[6] list a number of features which they argue are essential for OO database systems. Parallel to this, a number of formalizations of OO models have been proposed, such as COL [1, 2, 3] F logic [33] HILOG [13] ILOG [29] IQL [4, 5] formalizations of 02 [36, 35] OBJ and related languages [20, 21, 22, 23, 25, 38], OBLOG [15, 19, 17, 43] and CMSL [50, 46] Beeri [9] gives a survey of some issues. Even though these papers are top down, there is not yet any root concept from which they develop their formalization of object orientation. The trees of possibilities they explore have different roots and are ....
J.A. Goguen and J. Meseguer. Unifying functional, object-oriented and relational programming with logical semantics. In B. Shriver and P. Wegner, editors, Research Directions in Object-Oriented Programming, pages 417477. MIT Press, 1987.
....from OMT 91] The Tbench is an integrated software development environment for specifying and animating Troll and omTroll specifications. There are other approaches to developing object specification languages with a sound theoretical basis. The ones most closely related to ours are Foops [GM87, RS92, GS95] and Maude [Mes93] Foops is based on Obj3 [GW88] which is in turn based on equational logic. Maude is based on rewriting logic that is a uniform model of concurrency [Mes92] Many other language projects work on related ideas, e.g. Ooze [AG91] Albert [DDPW94] Lcm [FW93] and ....
J.A. Goguen and J. Meseguer. Unifying functional, Object--oriented and Relational Programming with logical semantics. Research Direction in ObjectOriented Programming, B.Shriver,P.Wegner (eds.), MIT Press 1987, pages 417--477
....model. TCM is a toolkit, not a method. It provides a number of well defined semi formal and formal notations and a set of heuristics for using these notations. The formal notation that can be used in TCM is LCM; however, the intention is that other formal notations, such as Oblog [7] FOOPS [16], and TROLL [26] can be used as alternatives, provided the link between the chosen formal notation and the semi formal notations of TCM is defined. TCM has evolved from a detailed study of existing methods for structure requirements modeling, viz. the ER notation, NIAM, Structured Analysis and ....
J.A. Goguen and J. Meseguer. Unifying functional, object-oriented and relational programming with logical semantics. In B. Shriver and P. Wegner, editors, Research Directions in Object-Oriented Programming, pages 417--477. MIT Press, 1987.
....cation of database application systems is not the handling of mass data; it is the need for a suitable datamodel. As a consequence a formal speci cation language suitable for database applications must provide the possibility to specify bulk data structures. The surveys of Atkinson and Buneman ([1987]) and Atkinson, Buneman and Morrison ( 1988] discuss the various approaches to provide bulk data types for database programming. Breazu Tannen, Buneman and Wong ( 1992] extend this view by the de nition of data types with structural recursion such as lists, sets or multisets. The most common ....
....state transitions. In a more general setting these are only special cases of dynamic integrity constraints which restrict the possible histories of data, e.g. that certain values may never decrease, others may never be deleted, etc. The maintenance of dynamic constraints is discussed by Lipeck ([1987]) a general investigation on constraint maintenance is contained in the work of Meyer, Weigand and Wieringa ( 1989] Therefore, it is claimed that formal speci cation languages for database applications must be able to specify at least static and transition integrity constraints. This implies ....
[Article contains additional citation context not shown here]
J. A. Goguen, J. Meseguer (1987): Unifying Functional, Object-Oriented and Relational Programming with Logical Semantics, in B. Shriver, P. Wegner (Eds.): Research Directions in Object-Oriented Programming , MIT Press, 417-478
....in the set of static classes. Finally, each dynamic class has a retract and an updatable class predicate. The use of retracts and class predicates is illustrated in a moment. Retracts have been introduced by Goguen, Jouannaud and Meseguer [18] Class predicates are used in FOOPS, OBJ and EQLOG [20, 22]. Retracts have not been used before to define dynamic subclasses. A dynamic subclass specification is a class specification over L( Sigma DOL ) containing for each retract r C 0 C : C 0 C, an axiom 8x : C 0 : OE r C 0 C (x) x: The formula OE says exactly when an object is an ....
J.A. Goguen and J. Meseguer. Unifying functional, object-oriented and relational programming with logical semantics. In B. Shriver and P. Wegner, editors, Research Directions in Object-Oriented Programming, pages 417--477. MIT Press, 1987.
....between the formal model on the one hand and the intuitive understanding of analysts and domain specialists on the other. The formal model is preferably specified in LCM. The intention is that it also could be specified in other languages, such as TROLL [9, 6] TROLL light [2] Oblog [3] or FOOPS [5]. Further research is needed to see whether this can be realized. Chapter 2 gives a description of the Library for Beta Sciences at the Free University based on a report by IJff [7] Chapter 3 contains a model of the boundary of the library as a whole and of the library DBS in particular. Chapter ....
J.A. Goguen and J. Meseguer. Unifying functional, object-oriented and relational programming with logical semantics. In B. Shriver and P. Wegner, editors, Research Directions in ObjectOriented Programming, pages 417--477. MIT Press, 1987.
....approach presented here also works in a framework in which properties of methods are specified by more general axioms. In this sense the O O syntax presented in the paper, if we do not consider method bodies, can be viewed as a starting point for an O O specification language, following an idea of [GM]. A paper in this direction is in preparation ( BZ2] Due to the lack of space, this paper is mainly devoted to illustrate the main ideas of our semantics, trying to avoid as much as possible technicalities and details. It is organized in a top down way. Sect. 1 presents the syntax and semantics ....
Goguen, J.A.; Meseguer, J. "Unifying functional, object-oriented and relational programming with logical semantics, Research Directions in Object-Oriented Programming (Shriver, B.; Wegner, P. editors), Computer Systems Series, MIT Press, 1987.
.... pointing into the unknown type X that we are specifying, whereas in the second coalgeraic case we have destructors or observers pointing out of X (see also the difference between abstract data types and procedural abstraction in [3] and between functional modules and object modules in [7]) Our use of the terminology of constructors and destructors comes from data type theory, and is different from their use in C , see [18] A typical constructor has the form A Theta X Theta Delta Delta Delta Theta X Gamma X where A is a constant set, whereas typical destructors are X ....
J.A Goguen and J. Meseguer. Unifying functional, object-oriented and relational programming with logical semantics. In B. Shriver and P. Wegner, editors, Research Directions in ObjectOriented Programming, pages 417--477. The MIT Press series in computer systems, 1987.
....of software engineering) and on the analysis of key concepts (e.g. inheritance vs. delegation [613] From the theoretical point of view, many recent attempts have been made at giving a formalization of object oriented languages; these include a formal semantics of Smalltalk 80 [951] and attempts [414] at unifying functional, logic and object oriented programming. 4.3.2 Databases and Knowledge Bases In the design of databases, information systems and knowledge bases, the conceptual modeling of information to be stored plays an important role. Some earlier work has been done to support ....
.... algebraic specification, with an appropriate semantics; moreover the special meta language devised for the definition can be translated into the kernel algebraic specification language ASL [851, 941] Early attempts to extend current techniques to deal with object oriented languages were [414] and [140] cf. also Section 4.3.1. 4.6.2 Action Semantics Action Semantics [694] is a framework for specifying (the semantics of) programming languages. It has good pragmatics, making specifications easily accessible to programmers. Thanks to its inherent modularity, action semantics scales up ....
J. A. Goguen and J. Meseguer. Unifying functional, object oriented and relational programming with logical semantics. In B. Shriver and P. Wegner, editors, Research Directions in Object-Oriented Programming, pages 417--477. MIT Press, 1987.
....detailed comparison. 13.4 Dynamic data types (A4) In recent literature various approaches have been proposed to extend the classical algebraic framework for the specification of data types to handle processes; the first one was Goguen and Meseguer s reflexive semantics for object orientation in [GM87]. All these approaches share some common features, which have been nicely summarized in [EO94] by Ehrig and Orejas, where they report informally a general schema for building an algebraic framework following the state as algebra style: ffl states as algebras; thus, and implicitly, dynamics is ....
J.A. Goguen and J. Meseguer. Unifying functional, object-oriented and relational programming with logical semantics. In B. Shriver anf P. Wegner, editor, Research Direction in Object-Oriented Programming, Computer System Series, pages 417--477. MIT Press, 1987.
....where we do not. For example, they allow mutable pairs to be a subtype of immutable pairs whereas we do not. Others have worked on the specification of types and subtypes. For example, many have proposed Z as the basis of specifications of object types[CL91, DD90, CDD 89] Goguen and Meseguer[GM87] use FOOPS; Leavens and his colleagues use Larch[Lea91, LW90, DL92] Though several of these researchers separate the specification of an object s creators from its other methods, none has identified the problem posed by the missing creators, and thus none has provided an explicit solution to ....
Goguen, J. A. and Meseguer, J. Unifying functional, object-oriented and relational programming with logical semantics. In Shriver, B. and Wegner, P., editors, Research Directions in Object Oriented Programming. MIT Press, 1987.
....based on threads, programming is in a dedicated language called COOL [85] influenced by Pascal and Modula 2. An important class of concurrent languages not mentioned here are concurrent logic languages [109] some of which are object oriented. Examples of these are; the OBJ series of languages [47] and I [94] 3.1 General principles from COOP languages None of the reviewed languages implement all of the features that have come to be expected in modern sequential object oriented languages. CHARM perhaps comes closest but even this language imposes restrictions on the programmer with ....
J. Goguen and J. Meseguer. Unifying functional, object-oriented and relational programming with logical semantics, In [102], pages 417--477. MIT Press, Cambridge, Mass., 1987.
....simplest of them cut is readily available in Prolog) In CPU [MN87] the user has to metaprogram the inheritance semantics. Our proposal, MU, falls under the third group of the above classification. There are solutions that do not restrict logic to mean just Horn clause logic, like FOOPlog [GM87] and Maude [Mes90] which put much emphasis on algebra (algebraic specifications, rewriting) or PRIZ [MT90] where deduction is used for synthesizing algorithms from specifications and not in execution. The list of mergers, mentioned in this section, does not pretend to be complete, but rather ....
J. A. Goguen and J. Meseguer. Unifying functional, object-oriented and relational programming with logical semantics. In B. Shriver and P. Wegner, eds, Research Directions in Object-Oriented Programming, pp 417-77. Cambrdige, MA: The MIT Press, 1987.
....however, the functionality of each aspect will be formally specified. Obviously, the various aspects are characterized by quite distinct properties. Therefore, we suggest to use aspect specific languages for specification, instead of using a general purpose specification language, such as FOOPS [32] or OS [8] In this way, specification languages are tailored to their corresponding aspect, and aspects can be specified much more compact and naturally. We will describe concrete specification languages in more detail in section 5. Specifications are in turn reusable, in parts or as a whole. For ....
J.A. Goguen, J. Messeguer. Unifying Functional, Object-Oriented and Relational Programming with Logical Semantics. In B. Shriver, P. Wegner (eds): Research Directions in Object-Oriented Programming. MIT Press Series in Computer Systems, Cambridge 1987.
....in the set of static classes. Finally, each dynamic class has a retract and an updatable class predicate. The use of retracts and class predicates is illustrated in a moment. Retracts have been introduced by Goguen, Jouanneaud and Meseguer [GJM85] Class predicates are used in FOOPS, OBJ and EQLOG [GM86, GM87b]. Retracts have not been used before to define dynamic subclasses. A dynamic subclass specification is a class specification over L( Sigma DOL ) containing for each retract r C 0 C : C 0 C, an axiom 8x : C 0 : OE r C 0 C (x) x: The intended semantics of a dynamic subclass ....
J.A. Goguen and J. Meseguer. Unifying functional, object-oriented and relational programming with logical semantics. In B. Shriver and P. Wegner, editors, Research Directions in Object-Oriented Programming, pages 417--477. MIT Press, 1987.
....useful for reasoning about properties of and which cannot be derived from the other axioms, e.g. associativity and commutativity. This illustrates the fact that in a framework we may have more than just ADT definitions. The syntax of a framework is thus similar to that of an algebraic ADT (e.g. [3, 16]) However, whereas an algebraic ADT is an initial model of its specification, the intended model of a closed framework is an isoinitial model , and an open framework has a class of isoinitial models. Definition 3.2 An isoinitial model I of F is a reachable model, i.e. a model where each element ....
....3.2 An isoinitial model I of F is a reachable model, i.e. a model where each element (of the domain) can be represented by a ground term, such that for any relation r defined in F , ground instances r(t) or :r(t) are true in I iff they are true in all models of F . Like initial semantics (e.g. [3]) isoinitial semantics also guarantees no junk and no confusion , but has the additional capability to handle negation, which is important in database applications. Example 3.2 For example, the isoinitial model of the closed framework LIST (Int ; i.e. the framework LIST (Elem; Delta) ....
[Article contains additional citation context not shown here]
J. Goguen and J. Meseguer. Unifying functional, object-oriented and relational programming with logical semantics. In B. Shriver and P. Wegner, editors, Research Directions in Object-Oriented Programming , pages 417--477, MIT Press, 1987.
....realm, there are several related developments: Troll [HSJ 94, JSHS96, SJH93, SHJE94, HJ95, EH96, Har97] Gnome [SR94] Lcm [FW93] and Albert [DDPW94] There are other approaches to formal object specification with a sound theoretical basis. The ones most closely related to ours are Foops [GM87, RS92, GS95] and Maude [Mes93] Foops is based on Obj3 [GW88] which is in turn based on equational logic. Maude is based on rewriting logic that is a uniform model of concurrency [Mes92] Other language projects working on related ideas are Ooze [AG91] and Etoile [AB95] In the Oblog family, ....
J.A. Goguen and J. Meseguer. Unifying functional, object--oriented and relational programming with logical semantics. In P. Wegner B. Shriver, editor, Research Direction in Object-Oriented Programming, pages 417--477. MIT Press, 1987.
....mechanism which can not only check for desirable properties in the specification framework, but also improve the framework (with regard to such properties) using the result of the synthesis. In our approach to modularity, we borrow many of the basic ideas developed in the algebraic approach (e.g. [6, 7, 14]) We shall briefly contrast the two approaches in Section 2.3. 2 Specification Frameworks and Specifications In this section, we give an informal introduction to specification frameworks, and show why and how we distinguish between them and specifications . We also briefly explain the background ....
.... in [12] However, a systematic use of axiomatisations to specify data and programs has been studied mainly in the field of algebraic specifications of abstract data types (ADT s) We refer in particular to the so called initial algebra approach, which has been popularised by many authors (e.g. [8, 6, 7, 14]) In our approach, we incorporate many of their basic ideas (and their terminology) in particular, modularity (and parametric modules, like LIST ) and intended model semantics. However, there are some major and fundamental differences. In this section, we briefly outline them and thus contrast ....
J.A. Goguen and J. Meseguer. Unifying functional, object-oriented and relational programming with logical semantics. In B. Shriver and P. Wegner, editors, Research Directions in Object-Oriented Programming , pages 417--477. MIT Press, 1987.
....Development Organization) y Supported in part by Defense Advanced Research Projects Agency and Rome Laboratory under Contract F30602 92 C 0140. for example work by Maier on O logic [26] work by Kifer and Lausen on F logic [23] work by Goguen, Meseguer and Wolfram on the FOOPS language [17, 21], work by Beeri and Milo on algebraic foundations [8, 9, 10] and work by Abiteboul on method schemas [4, 3] see [23, 9] for additional references in this whole area) However, it seems fair to say that no agreement has yet been reached on the matter of foundations, and that many problems remain ....
....order sorted semantics for class inheritance, and to provide module inheritance mechanisms to do the job of code modification. This distinction between the level of classes (more generally sorts) and the level of modules was already clearly made in the FOOPS language (besides the original paper [17], see also [21] for a very good discussion of inheritance issues and of the class module distinction in the context of FOOPS) and indeed goes back to the distinction between sorts and modules in OBJ [20] In MaudeLog, code in modules can be modified or adapted for new purposes by means of a ....
J. Goguen and J. Meseguer. Unifying functional, object-oriented and relational programming with logical semantics. In Bruce Shriver and Peter Wegner, editors, Research Directions in Object-Oriented Programming, pages 417--477. MIT Press, 1987.
No context found.
J. A. Goguen and J. Meseguer. Unifying functional, object-oriented and relational programming with logical semantics. In B. Shriver and P. Wegner, editors, Research Directions in Object-Oriented Programming, pages 417{ 477. MIT Press, 1987.
No context found.
J. A. Goguen and J. Meseguer. Unifying functional, object-oriented and relational programming with logical semantics. In B. Shriver and P. Wegner, editors, Research Directions in Object-Oriented Programming, Computer Systems series, pages 417--478. The MIT Press, Cambridge, Massachusetts, 1987.
No context found.
J. Goguen and J. Meseguer. Unifying functional, object-oriented and relational programming with logical semantics. In P. Wegner and B. Shriver, editors, Research Direction in ObjectOriented Programming, pages 417--477. The MIT Press, 1987.
No context found.
J.A. Goguen, J. Meseguer, Unifying Functional, Object-Oriented and Relational Programming with Logical Semantics, in: B. Shriver, P. Wegner, eds., Research Directions in Object-Oriented Programming, MIT Press (1987) 417-477
No context found.
J. Goguen and J. Meseguer. Unifying functional, object-oriented and relational programming with logical semantics. In B. Shriver and P. Wegner, editors, Research Directions in Object-Oriented Programming, pages 417--477. MIT Press, 1987.
First 50 documents Next 50
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC