Title: Data Types and Persistence
Description: There is a growing interest in integrating databases and programming languages. In recent years the programming language community has developed new models of computation such as logic programming, object-oriented programming and functional programming, to add to the well established von Neumann model. The data base community has almost independently developed more and more sophisticated data models to solve the problems of large scale data organisation. To make use of these new models in programming languages there must be an awareness of the problems of large scale data. The data base designers can also learn much about language interfaces from programming language designers. The purpose of this book is to present the state of the art in integrating both approaches. The book evolved from the proceedings of a workshop held at the Appin in August 1985. It consists of three sections. The first, "Data Types and Persistence", discusses the issues of data abstraction in a persistent environment. Type systems, modules and binding mechanisms that are appropriate for programming in the large are proposed. Type checking for polymorphic systems and across innovations of the type checker are also discussed. The second section, "Database Types in Programming Languages", introduces the concept of inheritance as a method of polymorphic modelling. It is shown how inheritance can be used as a method of computation in logic programming and how it is appropriate for modelling large scale data in databases. The last section discusses the issues of controlled access to large scale data in a concurrent and distributed persistent environment. Finally methods of how we may implement persistence and build machine architectures for persistent data round off the book.