In this paper we introduce a formal model of the object-orientedprogramming language SMALLTALK-80. The model can be useful for different applications in the framework of language design and implementation like compil...
详细信息
In this paper we introduce a formal model of the object-orientedprogramming language SMALLTALK-80. The model can be useful for different applications in the framework of language design and implementation like compiler or interpreter generation, correctness proofs of the implementations, and standardization of the language.
A layered object-orientedprogramming language (OOPL) is defined using a simple functional notation that has been equipped with a collection of features common to many OOPLs. The I resulting language provides a framew...
详细信息
A layered object-orientedprogramming language (OOPL) is defined using a simple functional notation that has been equipped with a collection of features common to many OOPLs. The I resulting language provides a framework within which existing OOPLs can be analysed and new OOPLs can be constructed.
The central concern of this paper is the production of so-called abstract denotational models for object-orientedlanguages. These models ascribe equal representations to objects with the same observable behaviour. In...
详细信息
The difficulties encountered while resolving the programming models of object-oriented and procedure-orientedlanguages are discussed. As a concrete example, the integration of Emerald—an object-oriented, distributed...
详细信息
The difficulties encountered while resolving the programming models of object-oriented and procedure-orientedlanguages are discussed. As a concrete example, the integration of Emerald—an object-oriented, distributed programming language—into the MLP system for mixed-language programming is described. This integration allows Emerald objects to invoke procedures written in other supported languages, and allows procedures written in the other languages to invoke operations on Emerald objects. Two different aspects of this integration are highlighted. First, the issues involved in bridging the distance between the programming model supported by Emerald and the programming model supported by MLP are discussed; specific problems include reconciling the object-oriented nature of Emerald with the procedure-oriented model of MLP, and accommodating Emerald's concurrency within the previously sequential MLP system. Second, the implementation of this design is described.
The Mneme project is an investigation of techniques for integrating programming language and database features to provide better support for cooperative, information-intensive tasks such as computer-aided software eng...
详细信息
The Mneme project is an investigation of techniques for integrating programming language and database features to provide better support for cooperative, information-intensive tasks such as computer-aided software engineering. The project strategy is to implement efficient, distributed, persistent programminglanguages. We report here on the Mneme persistent object store, a funda- mental component of the project, discussing its design and initial prototype. Mneme stores objects in a simple and general format, preserving object identity and object interrelationships. Specific goals for the store include portability, extensibility (especially with respect to object management policies), and performance. The model of memory that the store aims at is a single, cooperatively-shared heap, distributed across a collection of networked computers. The initial prototype is intended mainly to explore performance issues and to support object-oriented persistent programminglanguages. We include performance measurements from the prototype as well as more qualitative results.
Práce se zabývá návrhem a popisem dynamického reflektivního jazyka, založeného na prototypování. Nejprve jsou vysvětleny principy typické pro tuto skupinu jazyků a js...
详细信息
Práce se zabývá návrhem a popisem dynamického reflektivního jazyka, založeného na prototypování. Nejprve jsou vysvětleny principy typické pro tuto skupinu jazyků a jsou stručně popsáni známí představitelé. Dále je krátce pojednáno o jazycích pro matematické výpočty. Poté práce podrobně popisuje navržený programovací jazyk, jeho gramatiku a sémantiku. Jsou vysvětleny principy typové kontroly a dědičnosti. Je také ukázáno, jakým způsobem jsou implementovány základní řídící konstrukce známé z jiných jazyků. V další části je představen návrh virtuálního stroje pro vytvořený jazyk. Je vysvětlen použitý výpočetní model, organizace objektové paměti a interní reprezentace význačných struktur navrženého jazyka. Nakonec je rozebrána dynamická typová kontrola, překladač a způsob překladu typických konstrukcí do vnitřního kódu virtuálního stroje.
暂无评论