Files and library subroutines in common computer systems embody the idea of persistence. What is unusual about a Persistent Programming Environment is that persistence is not confined to a very limited type of objects like files. Any type of object which has a temporary existence can have a permanent existence and vice versa in a Persistent Programming Environment. The language used is x, a persistent programming language developed in conjunction with a capability based multiprocessor architecture. In x's object space, the life span of any object is orthogonal to its type.
All objects are first class.
The report also discusses the principles involved in designing a persistent programming language and the evolution of persistent programming languages. The dramatic fall in the unit price of main memory has meant that main memory sizes of 1 gigabyte or more are becoming economically viable. It is therefore feasible to have a large database which is entirely main memory resident. Efficient techniques for storing a database in main memory are likely to be different to those used for storing a database on secondary storage. This paper examines the implementation and performance of linear hashing in main memory databases.