Persistent Programming Languages - A Survey

Stewart M. Clamen

Technical Report No. CMU-CS-91-155
Carnegie Mellon University School of Computer Science, Pittsburgh, PA,
June 1992


Database systems are primarily concerned with the creation and maintenance of large, long-lived collections of data, while traditional programming languages have promoted such ideas as procedural control and data and functional abstraction. While each provides considerable utility in their respective domains, there exists a large number of applications that require functionality from both database and programming language systems. To this end, there has been serious effort over the past few years at developing systems that integrate the basic ideas from the two domains. This paper concentrates on research developments which have resulted in programming languages incorporating database functionality into their programming models, most importantly, a concept of data persistence.