Compiler Support for Persistent Programming
نویسندگان
چکیده
We present the design and implementation of Persistent Modula-3, a compiled, optimized, persistent programming language. The design allows the evaluation of performance aspects of persistent programming languages, while the implementation supports the development of compile-time mechanisms for optimizing persistent programs. We present several optimizations in detail, and outline further optimization opportunities. This project is supported by National Science Foundation Grants CCR-8658074 and DCR-8500332, and by Digital Equipment Corporation, GTE Laboratories, and the Eastman Kodak Company.
منابع مشابه
Exploiting Reflection to Add Persistence and Query Optimization to a Statically Typed Object-Oriented Language
It is popular and appealing to design and construct a persistent programming language by extending the semantics of a non-persistent language appropriately and then modifying its compiler and run-time system to implement the extended semantics. We describe here how to achieve this, and furthermore, how to support query optimization, which is typically neglected in persistent programming languag...
متن کاملDelivering the Benefits of Persistence to System Construction and Execution
In an orthogonally persistent programming system the longevity of data is independent of its other attributes. The advantages of persistence may be seen primarily in the areas of data modelling and protection resulting from simpler semantics and reduced complexity. These have been verified by the first implementations of persistent languages, typically consisting of a persistent store, a run-ti...
متن کاملAnalysing, Profiling and Optimising for Persistence
Orthogonally persistent programming languages1 provide improved support for the design, construction, maintenance and operation of applications that manage large bodies of long-lived, shared, structured data. Despite this, there is continued mainstream resistance to languages with orthogonal persistence due to a perception that they cannot deliver performance to match that of traditional progra...
متن کاملOn the construction of persistent programming environments
This thesis presents research into the construction of persistent programming systems. Much of the thesis is concerned with the design and implementation of persistent programming languages, in particular PS-algol and Napier. Both languages support machine independent vector and raster graphics data types. Napier provides an environment mechanism that enables the incremental construction and bi...
متن کاملUsing C as a Compiler Target Language for Native Code Generation in Persistent Systems
Persistent programming languages exhibit several requirements that affect the generation of native code, namely: garbage collection; arbitrary persistence of code, data and processes; dynamic binding; and the introduction of new code into a running system. The problems of garbage collection are not unique to persistent systems and are well understood: both code and data may move during a comput...
متن کامل