Orthogonally persistent object systems

Persistent Application Systems (PASs) are of increasing social and economic importance. They have the potential to be long-lived, concurrently accessed, and consist of large bodies of data and programs. Typical examples of PASs are CAD/CAM systems, office automation, CASE tools, software engineering environments, and patient-care support systems in hospitals. Orthogonally persistent object systems are intended to provide improved support for the design, construction, maintenance, and operation of PASs. Persistence abstraction allows the creation and manipulation of data in a manner, that is independent of its lifetime, thereby integrating the database view of information with the programming language view. This yields a number of advantages in terms of orthogonal design and programmer productivity which are beneficial for PASs. Design principles have been proposed for persistent systems. By following these principles, languages that provide persistence as a basic abstraction have been developed. In this paper, the motivation for orthogonal persistence is reviewed along with the above mentioned design principles. The concepts for integrating programming languages and databases through the persistence abstraction, and their benefits, are given. The technology to support persistence, the achievements, and future directions of persistence research are then discussed.

[1]  G. K. Smelser The structure of the eye , 1961 .

[2]  Friedrich L. Bauer,et al.  Revised report on the algorithm language ALGOL 60 , 1963, CACM.

[3]  Kristen Nygaard,et al.  SIMULA: an ALGOL-based simulation language , 1966, CACM.

[4]  Edsger W. Dijkstra,et al.  The structure of the “THE”-multiprogramming system , 1968, CACM.

[5]  Ralph E. Griswold,et al.  The SNOBOL4 programming language , 1968 .

[6]  Robert Fenichel,et al.  A LISP garbage-collector for virtual-memory computer systems , 1969, CACM.

[7]  B. J. Mailloux,et al.  Report on the Algorithmic Language ALGOL 68 , 1969 .

[8]  B. J. Mailloux,et al.  Report of Algorithmic Language ALGOL 68 , 1969 .

[9]  J. Bormann A. van Wijngaarden (Ed.), B. J. Mailloux, J. E. L. Peck and C. H. A. Koster, Report on the Algorithmic Language ALGOL 68. Amsterdam 1969. Printing by the Mathematisch Centrum. Preis brosch. $ 4.50 . , 1970 .

[10]  B. J. Mailloux,et al.  Report on the Algorithmic Language , 1971 .

[11]  Rod M. Burstall,et al.  Programming in POP-2 , 1971 .

[12]  Elliott I. Organick,et al.  The multics system: an examination of its structure , 1972 .

[13]  C. A. R. Hoare,et al.  Monitors: an operating system structuring concept , 1974, CACM.

[14]  Roy H. Campbell,et al.  The specification of process synchronization by path expressions , 1974, Symposium on Operating Systems.

[15]  Irving L. Traiger,et al.  The notions of consistency and predicate locks in a database system , 1976, CACM.

[16]  Joachim W. Schmidt,et al.  Some high-level language constructs for data of type relation , 1977, SIGMOD '77.

[17]  Malcolm P. Atkinson Programming Languages and Databases , 1978, VLDB.

[18]  Robin Milner,et al.  A Theory of Type Polymorphism in Programming , 1978, J. Comput. Syst. Sci..

[19]  John F. Wakerly,et al.  The programming language PASCAL , 1979, Microprocessors and microsystems.

[20]  Ronald Morrison,et al.  On the development of Algol , 1979 .

[21]  Tim Teitelbaum The Cornell Program Synthesizer: a syntax-directed programming environment , 1979, SIGP.

[22]  C. Whitby-Strevens,et al.  BCPL, the language and its compiler , 1979 .

[23]  J. T. Robinson,et al.  On optimistic methods for concurrency control , 1979, TODS.

[24]  Robin Milner,et al.  A Calculus of Communicating Systems , 1980, Lecture Notes in Computer Science.

[25]  John Mylopoulos,et al.  A language facility for designing database-intensive applications , 1980, TODS.

[26]  David W. Shipman,et al.  The functional data model and the data languages DAPLEX , 1981, TODS.

[27]  Thomas Reps,et al.  Programming Techniques and Data Structures , 1981 .

[28]  Dennis McLeod,et al.  Database description with SDM: a semantic database model , 1981, TODS.

[29]  Julia Hirschberg,et al.  Integrating CODASYL with High-level Programming Language , 1982, BNCOD.

[30]  Malcolm P. Atkinson,et al.  PS-algol: an algol with a persistent heap , 1982, SIGP.

[31]  Malcolm P. Atkinson,et al.  CMS—A chunk management system , 1983, Softw. Pract. Exp..

[32]  Malcolm P. Atkinson,et al.  Algorithms for a persistent heap , 1983, Softw. Pract. Exp..

[33]  Ronald Morrison,et al.  An Approach to Persistent Programming , 1989, Comput. J..

[34]  David Robson,et al.  Smalltalk-80: The Language and Its Implementation , 1983 .

[35]  C. A. R. Hoare,et al.  A Theory of Communicating Sequential Processes , 1984, JACM.

[36]  Butler W. Lampson,et al.  A Kernel Language for Abstract Data Types and Modules , 1984, Semantics of Data Types.

[37]  Ronald Morrison,et al.  Persistent object management system , 1984, Softw. Pract. Exp..

[38]  Rod M. Burstall,et al.  Programming with Modules as Typed Functional Programming , 1984, FGCS.

[39]  Luca Cardelli,et al.  Persistence and Type Abstraction , 1985, Data Types and Persistence , Informal Proceedings.

[40]  David J. DeWitt,et al.  Recovery architectures for multiprocessor database machines , 1985, SIGMOD Conference.

[41]  Malcolm S. Powell,et al.  Adding Programming Facilities to an Abstract Data Store , 1985, Data Types and Persistence , Informal Proceedings.

[42]  Ronald Morrison,et al.  Procedures as persistent data objects , 1985, TOPL.

[43]  Renzo Orsini,et al.  GALILEO: a strongly-typed, interactive conceptual language , 1985, TODS.

[44]  G. Lawrence Krablin Building Flexible Multilevel Transactions in a Distributed Persistent Environment , 1985, Data Types and Persistence , Informal Proceedings.

[45]  Luca Cardelli,et al.  On understanding types, data abstraction, and polymorphism , 1985, CSUR.

[46]  Ronald Morrison,et al.  The persistent store as an enabling technology for integrated project support environments , 1985, ICSE '85.

[47]  Ian F. Currie,et al.  Fileestore and Modes in Flex , 1985, Data Types and Persistence , Informal Proceedings.

[48]  M. F.,et al.  Bibliography , 1985, Experimental Gerontology.

[49]  T G Muchnick,et al.  On some extensions of syntactic error recovery technique based on phrase markers , 1986, SIGP.

[50]  William D. Clinger,et al.  Revised3 report on the algorithmic language scheme , 1986, SIGP.

[51]  Ronald Morrison,et al.  Designing a Persistent Information Space Architecture , 1986, IFIP Congress.

[52]  Ronald Morrison,et al.  An Integrated Graphics Programming Environment , 1986, Comput. Graph. Forum.

[53]  Satish M. Thatte,et al.  Persistent Memory: A Storage Architecture for Object-Oriented Database Systems , 1986, OODBS.

[54]  Richard Cooper,et al.  Constructing Database Systems in a Persistent Environment , 1987, VLDB.

[55]  Ronald Morrison,et al.  Polymorphic Names, Types, Constancy and Magic in a Type Secure Persistent Object Store , 1987, POS.

[56]  Richard P. Cooper,et al.  Persistent Object Systems: Their Design Implementation and Use. Proceedings of the Second International Workshop, Appin, Scotland, August 25-28, 1987 , 1987, Workshop on Persistent Objects.

[57]  Richard C. H. Connor,et al.  Polymorphism, persistence and software re-use in a strongly typed object-oriented environment , 1987, Softw. Eng. J..

[58]  David C. J. Matthews A Persistent Storage System for Poly and ML , 1987 .

[59]  S. Fox,et al.  An Ada-compatible distributed database management system , 1987, Proceedings of the IEEE.

[60]  Peter Buneman,et al.  Types and persistence in database programming languages , 1987, CSUR.

[61]  Alfred L. Brown,et al.  A Distributed Stable Store , 1987, Workshop on Persistent Objects.

[62]  E. K. Kolodner RECOVERY USING VIRTUAL MEMORY , 1987 .

[63]  Jorge B. Bocca,et al.  Logic Languages and Relational DBMS's - The Point of Convergence , 1987, Workshop on Persistent Objects.

[64]  John G. Hughes,et al.  Data Abstraction amd Transaction Processing in the Database Programming Language RAPP , 1990, International Workshop/Symposium on Database Programming Languages.

[65]  P. Buneman,et al.  Data Types and Persistence , 1988 .

[66]  Alan Dearle,et al.  Safe Browsing in a Strongly Typed Persistent Environment , 1988, Comput. J..

[67]  Ronald Morrison,et al.  Binding and Type Checking in Database Programming Languages , 1988, Comput. J..

[68]  Patrick Pfeffer,et al.  The Design and Implementation of O2, an Object-Oriented Database Systems , 1988, OODBS.

[69]  Barbara Liskov,et al.  Distributed programming in Argus , 1988, CACM.

[70]  Richard C. H. Connor,et al.  On the Integration of Object-Oriented and Process-Oriented Computation in Persistent Environments , 1988, OODBS.

[71]  Steven Sinofsky,et al.  Managing Persistent Data with Mneme: Designing a Reliable, Shared Object Interface , 1988, OODBS.

[72]  Francis Wai Distributed concurrent persistent languages: an experimental design and implementation , 1988 .

[73]  Alfred L. Brown,et al.  Persistent object stores , 1988 .

[74]  Alan Dearle,et al.  On the construction of persistent programming environments , 1988 .

[75]  Jack C. Wileden,et al.  Pgraphite: an experiment in persistent typed object management , 1988, SDE 3.

[76]  M Stanley,et al.  A Flexible Basis for Software Configuration Management. , 1988 .

[77]  W. Shipman David,et al.  The functional data model and the data language DAPLEX , 1988 .

[78]  R. Cooper On the utilisation of persistent programming environments , 1989 .

[79]  Ian Sommerville,et al.  The ECLIPSE user interface , 1989, Softw. Pract. Exp..

[80]  Renzo Orsini,et al.  A Framework for Comparing Type Systems for Database Programming Languages , 1989, DBPL.

[81]  Richard C. H. Connor,et al.  Language-design issues in supporting process-oriented computation in persistent environments , 1989, [1989] Proceedings of the Twenty-Second Annual Hawaii International Conference on System Sciences. Volume II: Software Track.

[82]  Michael J. Carey,et al.  Persistence in the E Language: Issues and Implementation , 1989, Softw. Pract. Exp..

[83]  Marc Shapiro,et al.  Persistence and Migration for C++ Objects , 1989, ECOOP.

[84]  Noboru Akima,et al.  Industrializing software development: a Japanese approach , 1989, IEEE Software.

[85]  Fred Mellender,et al.  Object management in a persistent smalltalk system , 1989, Softw. Pract. Exp..

[86]  David Maier,et al.  The GemStone Data Management System , 1989, Object-Oriented Concepts, Databases, and Applications.

[87]  Philip Wadler,et al.  Improving list comprehension database queries , 1989, Fourth IEEE Region 10 International Conference TENCON.

[88]  Luca Cardelli,et al.  Typeful Programming , 1989, Formal Description of Programming Concepts.

[89]  Frank Bott ECLIPSE an integrated project support environment , 1989 .

[90]  Michael J. Carey,et al.  Implementing Persistence in E , 1989, POS.

[91]  Alan Dearle Environments: a flexible binding mechanism to support system evolution , 1989, [1989] Proceedings of the Twenty-Second Annual Hawaii International Conference on System Sciences. Volume II: Software Track.

[92]  Peter Buneman,et al.  Database programming in Machiavelli—a polymorphic language with static type inference , 1989, SIGMOD '89.

[93]  Ian Thomas,et al.  PCTE interfaces: supporting tools in software-engineering environments , 1989, IEEE Software.

[94]  Clarence A. Ellis,et al.  Concurrency control in groupware systems , 1989, SIGMOD '89.

[95]  Peter Buneman,et al.  Proceedings of the Second International Workshop on Database Programming Languages , 1989 .

[96]  Florian Matthes,et al.  The Type System of DBPL , 1989, DBPL.

[97]  Elliot K. Kolodner,et al.  Garbage Collection: Managing a Stable Heap , 2022 .

[98]  David W. Stemple,et al.  Automatic verification of database transaction safety , 1989, ACM Trans. Database Syst..

[99]  Richard C. H. Connor,et al.  The Napier Type System , 1989, POS.

[100]  Quintin I. Cutts,et al.  Browsing, Grazing and Bibbling Persistent data Structures , 1989, POS.

[101]  A. S. M. Sajeev,et al.  A Capability Based Language for Persistent Programming: Implementation Issues , 1989, POS.

[102]  John Rosenberg,et al.  The MONADS Architecture - A Layered View , 1990, Workshop on Persistent Objects.

[103]  David W. Stemple,et al.  Exceeding the Limits of Polymorphism in Database Programming Languages , 1990, EDBT.

[104]  Richard C. H. Connor,et al.  Existentially Quantified Typed as a Database Viewing Mechanism , 1990, EDBT.

[105]  Richard Cooper,et al.  Configurable Data Modelling Systems , 1990, ER.

[106]  John Rosenberg,et al.  Security and Persistence , 1990, Workshops in Computing.

[107]  Liuba Shrira,et al.  A Highly Available Object Repository for Use in a Heterogeneous Distributed System , 1990, POS.

[108]  Alan Dearle,et al.  An Adaptive Graphical Browser for Napier88 , 1990 .

[109]  Richard C. H. Connor,et al.  Type Equivalence Checking in Persistent Object Systems , 1990, POS.

[110]  Stanley M. Sutton,et al.  A Flexible Consistency Model for Persistent Data in Software-Process Programming Languages , 1990, Workshop on Persistent Objects.

[111]  Ronald Morrison,et al.  On the Classification of Binding Mechanisms , 1990, Inf. Process. Lett..

[112]  David S. Munro,et al.  Stability in a Persistent Store Based on a Large Virtual Memory , 1990, Security and Persistence.

[113]  Alan Dearle,et al.  Cache Coherency and Storage Management in a Persistent Object System , 1990, POS.

[114]  O. Deux,et al.  The Story of O2 , 1990, IEEE Trans. Knowl. Data Eng..

[115]  Paul R. Wilson,et al.  Pointer swizzling at page fault time: efficiently supporting huge address spaces on standard hardware , 1991, CARN.

[116]  Richard C. H. Connor,et al.  An ad hoc approach to the implementation of polymorphism , 1991, TOPL.

[117]  Richard C. H. Connor,et al.  Subtyping and Assignment in Database Programming Languages , 1992, DBPL.

[118]  Umeshwar Dayal,et al.  ADT-based Type System for SQL , 1991, Query Processing for Advanced Database Systems.

[119]  D. H. Bartley,et al.  Revised4 report on the algorithmic language scheme , 1991, LIPO.

[120]  Michael Stonebraker,et al.  The POSTGRES next generation database management system , 1991, CACM.

[121]  Peter Buneman,et al.  Structural Recursion as a Query Language , 1992, DBPL.

[122]  Andrew W. Appel,et al.  Compiling with Continuations , 1991 .

[123]  Richard C. H. Connor,et al.  Types and polymorphism in persistent programming systems , 1991 .

[124]  O. Deux,et al.  The O2 system , 1991 .

[125]  Stanley B. Zdonik,et al.  Implementing persistent object bases : principles and practice , 1991 .

[126]  Malcolm P. Atkinson,et al.  Design Issues in a Map Language , 1992, DBPL.

[127]  Tim Sheard,et al.  Automatic generation and use of abstract structure operators , 1991, TOPL.

[128]  Sophie Cluet,et al.  Towards a Unification of Rewrite-Based Optimization Techniques for Object-Oriented Queries , 1991, Query Processing for Advanced Database Systems.

[129]  Florian Matthes,et al.  Bulk Types: Built-In or Add-On? , 1992, DBPL.

[130]  Sonia Berman,et al.  P-Pascal : a data-oriented persistent programming language , 1991 .

[131]  Hannu Kangassalo Entity-relationship approach : the core of conceptual modelling : proceedings of the Ninth International Conference on the Entity-Relationship Approach, Lausanne, Switzerland, 8-10 October, 1990 , 1991 .

[132]  Joachim W. Schmidt,et al.  Database Programming Languages: Bulk Types and Persistent Data. 3rd International Workshop, August 27-30, 1991, Nafplion, Greece, Proceedings , 1991 .

[133]  R. F. Bruynooghe,et al.  PSS: A System for Process Enactment , 1991, Proceedings. First International Conference on the Software Process,.

[134]  Paul R. Wilson,et al.  Uniprocessor Garbage Collection Techniques , 1992, IWMM.

[135]  Florian Matthes,et al.  The Database Programming Language DBPL Rationale and Report , 1992 .

[136]  Frans Henskens,et al.  An examination of operating system support for persistent object systems , 1992, Proceedings of the Twenty-Fifth Hawaii International Conference on System Sciences.

[137]  Malcolm P. Atkinson,et al.  Measuring Persistent Object Systems , 1992, Workshop on Persistent Objects.

[138]  Richard C. H. Connor,et al.  Persistent Program Construction through Browsing and User Gesture with some Typing , 1992, POS.

[139]  J. Eliot B. Moss,et al.  Working with Persistent Objects: To Swizzle or Not to Swizzle , 1992, IEEE Trans. Software Eng..

[140]  Quintin Cutts,et al.  Persistent object systems , 2000, Softw. Pract. Exp..

[141]  Graham N. C. Kirby,et al.  Persistent programming with strongly typed linguistic reflection , 1992, Proceedings of the Twenty-Fifth Hawaii International Conference on System Sciences.

[142]  Ronald Morrison,et al.  Persistent Object Systems, Proceedings of the Fifth International Workshop on Persistent Object Systems, San Miniato (Pisa), Italy, 1-4 September, 1992 , 1992, POS.

[143]  David W. Stemple,et al.  Using type transformation in database system implementation , 1992 .

[144]  Malcolm P. Atkinson,et al.  Persistent Foudations for Scalable Multi-Paradigmal Systems , 1992, IWDOM.

[145]  David W. Stemple,et al.  Linguistic reflection: a bridge from programming to database languages , 1992, Proceedings of the Twenty-Fifth Hawaii International Conference on System Sciences.

[146]  B. Welch The structure , 1992 .

[147]  Bill Curtis,et al.  Process modeling , 1992, CACM.

[148]  P. Trinder,et al.  Design of an integrated query and manipulation notation for database languages , 1992, Proceedings of the Twenty-Fifth Hawaii International Conference on System Sciences.

[149]  Michel Ruffin,et al.  KITLOG: a Generic Logging Service , 1992, SRDS.

[150]  R. M. Greenwood,et al.  The use of a persistent language in the implementation of a process support system , 1992 .

[151]  M. Ruffin,et al.  K/sub I//sup T/L/sub G//sup O/: a generic logging service , 1992, [1992] Proceedings 11th Symposium on Reliable Distributed Systems.

[152]  Florian Matthes,et al.  An open system architecture for a persistent object store , 1992 .

[153]  P. Zezula,et al.  An efficient store for object bases , 1992, Proceedings of the Twenty-Fifth Hawaii International Conference on System Sciences.

[154]  Vivek Singhal,et al.  Texas: An Efficient, Portable Persistent Store , 1992, POS.

[155]  Jeannette M. Wing,et al.  Persistence+undoability=transactions , 1992, Proceedings of the Twenty-Fifth Hawaii International Conference on System Sciences.

[156]  L. Amsaleg,et al.  Eos, an environment for object-based systems , 1992, Proceedings of the Twenty-Fifth Hawaii International Conference on System Sciences.

[157]  Ronald Morrison,et al.  A generic persistent object store , 1992, Softw. Eng. J..

[158]  François Bancilhon,et al.  Building an Object-Oriented Database System, The Story of O2 , 1992 .

[159]  Richard C. H. Connor,et al.  Persistent Hyper-Programs , 1992, POS.

[160]  Richard Cooper,et al.  A Graphical Data Modelling Program with Constraint Specification and Management , 1992, BNCOD.

[161]  David W. Stemple,et al.  Uniform Traversal Combinators: Definition, Use and Properties , 1992, CADE.

[162]  Joachim W. Schmidt,et al.  Database programming languages : bulk types & presistent data : the Third International Workshop, August 27-30, 1991, Nafplion, Greece , 1992 .

[163]  Q. I. Cutts,et al.  Delivering the benefits of persistence to system construction and execution , 1993 .

[164]  Alexander L. Wolf,et al.  The Performance of Partitioned Garbage Collection in Object Databases ; CU-CS-653-93 , 1993 .

[165]  Renzo Orsini,et al.  An Object Data Model with Roles , 1993, VLDB.

[166]  Roy Levin,et al.  The Vesta Repository: A File System Extension for Software Development , 1993 .

[167]  Guido Moerkotte,et al.  Nested Queries in Object Bases , 1993, DBPL.

[168]  Robin Milner,et al.  The Polyadic π-Calculus: a Tutorial , 1993 .

[169]  Dag I. K. Sjoberg Thesaurus-based methodologies and tools for maintaining persistent application systems , 1993 .

[170]  Alan Dearle,et al.  Octopus: A Reflective Language Mechanism for Object Manipulation , 1993, DBPL.

[171]  Gottfried Vossen,et al.  Query Processing for Advanced Database Systems , 1993 .

[172]  Serge Abiteboul,et al.  Querying and Updating the File , 1993, VLDB.

[173]  Jun Han Methodology Modelling: Combining Software Processes with Software Products Methodology Modelling: Combining Software Processes with Software Products , 1993 .

[174]  Malcolm P. Atkinson,et al.  Building an Integrated Persistent Application , 1993, DBPL.

[175]  Catriel Beeri,et al.  Proceedings of the Fourth International Workshop on Database Programming Languages - Object Models and Languages , 1993 .

[176]  Roy Levin,et al.  The Vesta Approach to Precise Configuration of Large Software Systems , 1993 .

[177]  Renzo Orsini,et al.  An Introduction to the Database Programming Language Fibonacci , 1993, SEBD.

[178]  Antonio Albano,et al.  Persistent Object Systems , 1993, Workshops in Computing.

[179]  Ronald Morrison,et al.  Managing Change in Persistent Object Systems , 1993, ISOTAS.

[180]  Richard C. H. Connor,et al.  The Joy of Sets , 1993, DBPL.

[181]  Richard Cooper,et al.  Type-Safe Linguistic Run-time Reflection - A Practical Perspective , 1994, POS.

[182]  David S. Munro,et al.  Concurrent Shadow Paging in the Flask Architecture , 1994, POS.

[183]  Richard C. H. Connor,et al.  START: A Linguistic Reflection Tool Using Hyper-Program Technology , 1994, POS.

[184]  Richard Cooper,et al.  A Generic Data Model for the Support of Multiple User Interaction Facilities , 1994, ER.

[185]  Richard Cooper,et al.  Type-Safe Linguistic Run-time Reflection - A Practical Perspective , 1994, Workshop on Persistent Objects.

[186]  David S. Munro On the integration of concurrency, distribution and persistence , 1994 .

[187]  Roger King Workshop on the intersection between databases and software engineeering , 1994, Proceedings of 16th International Conference on Software Engineering.

[188]  Alan Dearle,et al.  Using C as a Compiler Target Language for Native Code Generation in Persistent Systems , 1994, POS.

[189]  Richard C. H. Connor,et al.  Unifying Interaction with Persistent Data and Program , 1994, IDS.

[190]  Masaru Kitsuregawa,et al.  An Efficient Pointer Swizzling Method for Navigation Intensive Applications , 1994, POS.

[191]  Florian Matthes,et al.  Persistent Threads , 1994, VLDB.

[192]  Antony L. Hosking,et al.  Expressing Object Residency Optimizations Using Pointer Type Annotations , 1994, POS.

[193]  Olivier Gruber,et al.  Customizing Concurrency Controls using Graph of Locking Capabilities , 1994, POS.

[194]  Robert L. Grossman,et al.  Managing Physical Folios of Objects Between Nodes , 1994, POS.

[195]  John Rosenberg,et al.  Grasshopper: An Orthogonally Persistent Operating System , 1994, Comput. Syst..

[196]  Dan Suciu,et al.  Comprehension syntax , 1994, SGMD.

[197]  Quintin I. Cutts,et al.  Analysing Persistent Language Applications , 1994, POS.

[198]  R. Connor,et al.  Persistent Possibilities for Software Environments , 1994 .

[199]  W. Paul Cockshott,et al.  DAIS: An Object-Addressed Processor Cache , 1994, POS.

[200]  Richard C. H. Connor,et al.  Using persistence technology to control schema evolution , 1994, SAC '94.

[201]  Tim Sheard,et al.  Type Safe Meta-Programming , 1994 .

[202]  Catriel Beeri,et al.  Database Programming Languages (DBPL-4) , 1994, Workshops in Computing.

[203]  Hamid Pirahesh,et al.  Making Real Data Persistent: Initial Experiences with SMRC , 1994, POS.

[204]  David Maier,et al.  Persistent Object Systems , 1995, Workshops in Computing.

[205]  Richard C. H. Connor,et al.  Exploiting Persistent Linkage in Software Engineering Environments , 1995, Comput. J..

[206]  David Maier,et al.  Persistent object systems : proceedings of the Sixth International Workshop on Persistent Object Systems, Tarascon, Provence, France, 5-9 September 1994 , 1995 .

[207]  Gordon W. Russell,et al.  PERSISTENT, OBJECT-ORIENTED AND NETWORKED , 1995 .

[208]  Luca Cardelli,et al.  A language with distributed scope , 1995, POPL '95.

[209]  M. Mira da Silva Automating type-safe RPC , 1995, Proceedings RIDE-DOM'95. Fifth International Workshop on Research Issues in Data Engineering-Distributed Object Management.

[210]  Andrew P. Black,et al.  Semantics for parameter passing in a type-complete persistent RPC , 1996, Proceedings of 16th International Conference on Distributed Computing Systems.

[211]  Luca Cardelli,et al.  Obliq, a language with distributed scope , 1996 .

[212]  David S. Munro,et al.  The Napier88 Standard Library Reference Manual , 1997 .

[213]  Richard C. H. Connor,et al.  The Napier88 Reference Manual , 1997 .

[214]  Ronald Morrison,et al.  Approaching Integration in Software Environments , 1997 .

[215]  Sophie Cluet,et al.  Database Programming Languages , 1997, Lecture Notes in Computer Science.

[216]  Harold Abelson,et al.  Revised5 report on the algorithmic language scheme , 1998, SIGP.

[217]  Richard C. H. Connor,et al.  Type-Safe Linguistic Reflection: A Generator Technology , 2000 .

[218]  Ronald Morrison,et al.  Specifying Flexible Concurrency Control Schemes: an Abstract Operational Approach , 2000 .

[219]  Christopher Strachey,et al.  Fundamental Concepts in Programming Languages , 2000, High. Order Symb. Comput..

[220]  A. Dearle,et al.  A Hyperlinked Persistent Software Development Environment , 2000 .

[221]  J. Copley The story of O , 2001, Nature.

[222]  Peter Wright Transactions and Concurrency , 2002 .

[223]  Edsger W. Dijkstra,et al.  Cooperating sequential processes , 2002 .

[224]  Robert D. Tennent,et al.  Language design methods based on semantic principles , 1977, Acta Informatica.

[225]  Stanley B. Zdonik,et al.  Cooperative transaction hierarchies: Transaction support for design applications , 1992, The VLDB Journal.

[226]  Alfons Kemper,et al.  Adaptable pointer swizzling strategies in object bases: design, realization, and quantitative analysis , 2005, The VLDB Journal.

[227]  Stewart M. Clamen,et al.  Schema evolution and integration , 2005, Distributed and Parallel Databases.

[228]  Renzo Orsini,et al.  Fibonacci: A programming language for object databases , 1995, The VLDB Journal.

[229]  Malcolm P. Atkinson,et al.  Thesaurus-Based Software Environments , 2007 .

[230]  A. L. Brown,et al.  Protection in Persistent Object Systems , 1990, Security and Persistence.

[231]  F. Bancilhon,et al.  The Design and Implementation of 02, an Object-Oriented Database System , .