\begin{thebibliography}{SWBM89} \bibitem[AB87]{AtBu86} M.P. Atkinson and P. Bunemann. \newblock Types and Persistence in Database Programming Languages. \newblock {\it ACM Computing Surveys}, 19(2), June 1987. \bibitem[ABC*83]{ABCCM83} M.P. Atkinson, P.J. Bailey, K.J. Chisholm, W.P. Cockshott, and R. Morrison. \newblock An approach to persistent programming. \newblock {\it Computer Journal}, 26(4), November 1983. \bibitem[ABLV81]{ABLV81} P. Atzeni, C. Batini, M. Lenzerini, and F. Vallanelli. \newblock INCOD: A System for Conceptual Design of Data and Transactions in the Entity-Relationship Model. \newblock In P.P.S. Chen, editor, {\it Entity-Relationship Approach to Information Modeling and Analysis}, pages~379--414, ER Institute, 1981. \bibitem[ACC81]{ACC81a} M.P. Atkinson, K.J. Chisholm, and W.P. Cockshott. \newblock PS-Algol: An Algol with a Persistent Heap. \newblock {\it ACM SIGPLAN Notices}, 17(7), July 1981. \bibitem[ACR85]{ACO85} A. Albano, L. Cardelli, and Orsini R. \newblock Galileo: A Strongly-Typed, Interactive Conceptual Language. \newblock {\it ACM Transactions on Database Systems}, 10(2):230--260, 1985. \bibitem[ADG*89]{A*89} A. Albano, A. Dearle, G. Ghelli, C. Martin, R. Morrison, R. Orsini, and D. Stemple. \newblock A Framework for Comparing Type Systems for Database Programming Languages. \newblock In {\it Proc. of the 2nd Workshop on Database Programming Languages, Portland, Oregon}, pages~203--212, June 1989. \bibitem[AG89a]{AgGh89} R. Agrawal and N.H. Gehani. \newblock ODE (Object Database and Environment): The Language and the Data Model. \newblock In {\it ACM-SIGMOD International Conference on Management of Data}, pages~36--45, Portland, Oregon, June 1989. \bibitem[AG89b]{AgGh89b} R. Agrawal and N.H. Gehani. \newblock Rationale for the Design of Persistence and Query Processing Facilities in the Database Programming Language O++. \newblock In {\it Proc. of the 2nd Workshop on Database Programming Languages, Salishan Lodge, Oregon}, June 1989. \bibitem[AGMS88]{AGMS88} J.-R. Abrial, P. Gardiner, C. Morgan, and M. Spivey. \newblock {\it Abstract Machines, Part 1--4}. \newblock Technical Report, 26 Rue des Plantes, Paris 75014, June 1988. \bibitem[AGO89]{AGO89} A. Albano, G. Ghelli, and R. Orsini. \newblock Types for Databases: The Galileo Experience. \newblock In {\it Proc. of the 2nd Workshop on Database Programming Languages, Portland, Oregon}, June 1989. \bibitem[AGOO88]{AGOO88} A. Albano, G. Ghelli, M.E. Occhiuto, and R. Orsini. \newblock {\it Galileo Reference Manual, Version 2.0}. \newblock Technical Report, Dipartimento di Informatica, Universit\`{a} di Pisa, February 1988. \bibitem[AK89]{AbKa89} S. Abiteboul and P.C. Kanellakis. \newblock Object Identity as a Query Language Primitive. \newblock In {\it ACM-SIGMOD International Conference on Management of Data}, pages~159--173, Portland, Oregon, 1989. \bibitem[Alb83]{Alba83} A. Albano. \newblock Type Hierarchies and Semantic Data Models. \newblock In {\it ACM SIGPLAN '83: Symposium on Programming Langauge Issues in Software Systems}, pages~178--186, San Francisco, 1983. \bibitem[AM85]{AtMo85a} M.P. Atkinson and R. Morrison. \newblock First class persistent procedures. \newblock {\it ACM Transactions on Programming Languages and Systems}, 7(4), October 1985. \bibitem[AM87]{AtMo88} M.P. Atkinson and R. Morrison. \newblock Polymorphic Names and Iterations. \newblock In {\it Proc. of the Workshop on Database Programming Languages, Roscoff, France}, September 1987. \bibitem[AM88]{AtMo85} M.P. Atkinson and R. Morrision. \newblock Types, Bindings and Parameters in a Persistent Environment. \newblock In M.P. Atkinson, P. Buneman, and R. Morrison, editors, {\it Data Types and Persistence}, Topics in Information Systems, Springer-Verlag, 1988. \bibitem[AMSV88]{AMSV88} J.-R. Abrial, C. Morgan, M. Spivey, and T.N. Vickers. \newblock {\it The Logic of `B'}. \newblock Technical Report, 26 Rue des Plantes, Paris 75014, September 1988. \bibitem[AS89]{AtSc89} M.P. Atkinson and J.W. Schmidt. \newblock {\it Tutorium: Datenbanksprachen}. \newblock Datenbank Tutorientage, DBT '89, Z\"urich, Deutsche Informatik Akademie, February 1989. \bibitem[BB84]{BaBu84} D. Batory and A. Buchmann. \newblock Molecular Objects, Abstract Data Types, and Data Models: A Framework. \newblock In {\it Proc. of the 10h International Conference on Very Large Data Bases}, 1984. \bibitem[BBKV87]{BBKV87} F. Bancilhon, T. Briggs, S. Khoshafian, and P. Valduriez. \newblock FAD, a Simple and Powerful Database Language. \newblock In {\it Int. Conf. on VLDB}, Brighton, England, September 1987. \bibitem[BBO89]{BBo89} V. Breazu-Tannen, P. Buneman, and A. Ohori. \newblock Can Object-Oriented Databases be Statically Typed? \newblock In {\it Proc. of the 2nd Workshop on Database Programming Languages, Salishan Lodge, Oregon}, June 1989. \bibitem[BCD89]{BCD89} F. Bancilhon, S. Cluet, and C. Delobel. \newblock A Query Language for the O$_2$ Object-Oriented Database System. \newblock In {\it Proc. of the 2nd Workshop on Database Programming Languages, Salishan Lodge, Oregon}, June 1989. \bibitem[BDRZ83]{BDRZ83} R.P. Br\"agger, A. Dudler, J. Rebsamen, and C.A. Zehnder. \newblock Gambit: An Interactive Database Design Tool for Data Structures, Integrity Constraints and Transactions. \newblock In C.A. Zehnder, editor, {\it Database Techniques for Professional Worskstations}, pages~65--96, Institut f\"ur Informatik, ETH Z\"urich, Switzerland, September 1983. \bibitem[BGM89]{BGM85} A. Borgida, S. Greenspan, and J. Mylopoulos. \newblock Knowledge Representation as a Basis for Requirements. \newblock In J.W. Schmidt and C. Thanos, editors, {\it Foundations of Knowledge Base Management}, Topics in Information Systems, Springer-Verlag, 1989. \newblock (in press). \bibitem[BHG87]{BHG87} P.A. Bernstein, V. Hadzilacos, and N. Goodman, editors. \newblock {\it Concurrency Control and Recovery in Database Systems}. \newblock Addison-Wesley, 1987. \bibitem[BHR82]{BHR82} P. Bunemann, J. Hirschberg, and D. Root. \newblock A Codasyl Interface to Pascal and Ada. \newblock In {\it Proc. 2nd British National Conference on Databases (BNCOD 2)}, Cambridge University Press, 1982. \bibitem[BJM*89]{BJMSV89} A. Borgida, M. Jarke, J. Mylopoulos, J.W. Schmidt, and Y. Vassiliou. \newblock The Software Development Environment as a Knowledge Base Management System. \newblock In J.W. Schmidt and C. Thanos, editors, {\it Foundations of Knowledge Base Management}, Topics in Information Systems, Springer-Verlag, 1989. \newblock (in press). \bibitem[BJS86]{BJS86} S. B\"ottcher, M. Jarke, and J.W. Schmidt. \newblock Adaptive Predicate Managers in Database Systems. \newblock In {\it Proc. of the 12th International Conference on VLDB}, Kyoto, 1986. \bibitem[BJW88]{BJW88} A.D. Birell, M.B. Jones, and E.P. Wobber. \newblock {\it A Simple and Efficient Implementation for Small Databases}. \newblock Report~24, Digital System Research Center, January 1988. \bibitem[BK85]{BaKi85} D. Batory and W. Kim. \newblock Modelling Concepts for VLSI CAD Objects. \newblock {\it ACM Transactions on Database Systems}, 10(3):322--346, September 1985. \bibitem[BKMS89]{BKMS89} A. Borgida, M. Koubarakis, J. Mylopoulos, and M. Stanley. \newblock {\it Telos: A Knowledge Representation Language for Requirements Modeling}. \newblock Technical Report~KRR-TR-89-4, Dept. of Computer Science, University of Toronto, February 1989. \bibitem[BMS84]{BMS84} M.L. Brodie, J. Myopoulos, and J.W. Schmidt, editors. \newblock {\it On Conceptual Modelling, Perspectives from Artificial Intelligence, Databases, and Programming Languages}. \newblock Springer-Verlag, 1984. \bibitem[BMSW89]{BMSW89} A. Borgida, J. Mylopoulos, J.W. Schmidt, and I. Wetzel. \newblock Support for Data-Intensive Applications: Conceptual Design and Software Development. \newblock In {\it Proc. of the 2nd Workshop on Database Programming Languages, Salishan Lodge, Oregon}, June 1989. \bibitem[BMW84]{BMW84} A. Borida, J. Mylopoulos, and H.K.T. Wong. \newblock Generalization / Specialization as a Basis for Software Specification. \newblock In M.L. Brodie, J. Mylopoulos, and J.W. Schmidt, editors, {\it On Conceptual Modelling}, pages~87--117, Topics in Information Systems, Springer-Verlag, 1984. \bibitem[BR84]{BrRi84} M.L. Brodie and D. Ridjanovic. \newblock On the Design and Specification of Database Transactions. \newblock In M.L. Brodie, J. Mylopoulos, and J.W. Schmidt, editors, {\it On Conceptual Modelling}, Topics in Information Systems, Springer-Verlag, 1984. \bibitem[Bro84]{Brod84} M.L. Brodie. \newblock On the Development of Data Models. \newblock In M.L. Brodie, J. Mylopoulos, and J.W. Schmidt, editors, {\it On Conceptual Modelling}, Topics in Information Systems, Springer-Verlag, 1984. \bibitem[Car84]{Card84} L. Cardelli. \newblock A Semantics of Multiple Inheritance. \newblock In G. Kahn, D.B. MacQueen, and G. Plotkin, editors, {\it Semantics of Data Types}, pages~51--67, Volume~173 of Lecture Notes in Computer Science, Springer-Verlag, 1984. \bibitem[Car86a]{Card86} L. Cardelli. \newblock Amber. \newblock In {\it Combinators and Functional Programming Languages}, Volume~242 of Lecture Notes in Computer Science, Springer-Verlag, 1986. \bibitem[Car86b]{Card86b} L. Cardelli. \newblock The Amber Machine. \newblock In {\it Combinators and Functional Programming Languages}, Volume~242 of Lecture Notes in Computer Science, Springer-Verlag, 1986. \bibitem[Car88]{Card88b} L. Cardelli. \newblock Types for Data-Oriented Languages. \newblock In {\it Advances in Database Technology, EDBT '88}, pages~1--15, Volume~303 of Lecture Notes in Computer Science, Springer-Verlag, 1988. \bibitem[Car89]{Card89} L. Cardelli. \newblock {\it Typeful Programming}. \newblock Digital Systems Research Center Reports~45, DEC SRC Palo Alto, May 1989. \bibitem[CD87]{CDeW88} M.J. Carey and D.J~. DeWitt. \newblock An Overview of the EXODUS Project. \newblock In M. Carey, editor, {\it Database Engineering, Special Issue on Extensible Database Systems}, Volume~10, June 1987. \bibitem[CDG*88]{Card88} L. Cardelli, J. Donahue, L. Glassman, M. Jordan, B. Kalsow, and G. Nelson. \newblock {\it Modula-3 Report}. \newblock Technical Report~ORC-1, Olivetti Research Center, 2882 Sand Hill Road, Memlo Park, California, 1988. \bibitem[CH85]{CoHu85} T. Coquand and G. Huet. \newblock {\it Constructions: a higher order proof system for mechanizing mathematics}. \newblock Technical Report~401, INRIA, Domaine de Voluceau Rocquencourt 78153 Le Chesnay Cedex - France, May 1985. \bibitem[Che76]{Chen76} P.P.S. Chen. \newblock The Entity-Relationship Model -- Toward a Unified View of Data. \newblock {\it ACM Transactions on Database Systems}, 1(1):9--36, March 1976. \bibitem[Che80]{Chen80} P.P.S. Chen, editor. \newblock {\it Entity-Relationship Approach to System Analysis and Design}. \newblock North-Holland, 1980. \bibitem[Che85]{Chen85} P.P.S. Chen. \newblock {\it Entity-Relationship Approach: The Use of the ER Concept in Knowledge Representation}. \newblock North-Holland, 1985. \bibitem[CM84]{CoMa84} G. Copeland and D. Maier. \newblock Making Smalltalk a database system. \newblock In {\it ACM-SIGMOD International Conference on Management of Data}, pages~316--325, Boston, Ma., June 1984. \bibitem[CM88]{CaMcQu88} L. Cardelli and D. MacQueen. \newblock Persistence and Type Abstraction. \newblock In {\it Data Types and Persistence}, Topics in Information Systems, Springer-Verlag, 1988. \bibitem[Cod70]{Codd70} E.F. Codd. \newblock A Relational Model of Data for Large Shared Databanks. \newblock {\it Communications of the ACM}, 13(6):377--387, June 1970. \bibitem[CRNM88]{CRBM88} L.K. Chung, D. Rios-Zertuche, B. Nixon, and J. Mylopoulos. \newblock Process Management and Assertion Enforcement for a Semantic Data Model. \newblock In {\it Advances in Database Technology, EDBT '88}, pages~469--487, Volume~303 of Lecture Notes in Computer Science, Springer-Verlag, 1988. \bibitem[CW85]{CaWe85} L. Cardelli and P. Wegner. \newblock On Understanding Types, Data Abstraction, and Polymorphism. \newblock {\it ACM Computing Surveys}, 17(4):471--522, December 1985. \bibitem[Dat81]{Date81} C.J. Date. \newblock {\it An Introduction to Database Systems}. \newblock Addison-Wesley Publishing Company, 1981. \bibitem[Day89]{Daya89} U. Dayal. \newblock Queries and Views in an Object-Oriented Data Model. \newblock In {\it Proc. of the 2nd Workshop on Database Programming Languages, Salishan Lodge, Oregon}, June 1989. \bibitem[DCBM89]{DCBM89} A. Dearle, R. Connor, F. Brown, and R. Morrison. \newblock Napier88 -- A Database Programming Language? \newblock In {\it Proc. of the 2nd Workshop on Database Programming Languages, Salishan Lodge, Oregon}, June 1989. \bibitem[Dea89]{Dea89} A. Dearle. \newblock Environments: a flexible binding mechanism to support system evolution. \newblock In {\it Proc. HICSS-22, Hawaii}, pages~46--55, Volume~II, January 1989. \bibitem[Dij76]{Dijk76} E.W. Dijkstra. \newblock {\it A Discipline of Programming}. \newblock Prentice-Hall, Englewood Cliffs, NJ, 1976. \bibitem[DN66]{DaNy66} O. Dahl and K. Nygaard. \newblock Simula, an Algol-based simulation language. \newblock {\it Communications of the ACM}, 9(9):671--678, September 1966. \bibitem[DV88]{DaVa88} S. Danforth and P. Valduriez. \newblock {\it The Data Model of FAD, a Database Programming Language, Rev. 1}. \newblock Technical Report~ACA-ST-059-88, MCC, June 1988. \bibitem[DW88]{DeWi88} D.J. De~Witt. \newblock {\it Extensible Database Systems: An Overview}. \newblock Tutorial n.4, Extending Data Base Technology, CINI foundation, Venezia, March 1988. \bibitem[Gra78]{Gray78} J. Gray. \newblock Notes on Database Operating Systems. \newblock In {\it Operating Systems -- An Advanced Course}, Volume~60 of Lecture Notes in Computer Science, Springer-Verlag, 1978. \bibitem[Gra81]{Gray81} J.N. Gray. \newblock The Transaction Concept: Virtues and Limitations. \newblock In {\it Proc. 10th VLDB Conference}, pages~144--154, Cannes, France, September 1981. \bibitem[Gro87a]{DAIDA5} DAIDA Group. \newblock {\it Final Version on TDL Design}. \newblock Esprit Project 892, DAIDA~Deliverable DES 1.2, Fachbereich Informatik, Johann Wolfgang Goethe-Universit\"at, Frankfurt, West Germany, 1987. \bibitem[Gro87b]{PPRG87} Persistent~Programming~Research Group. \newblock {\it PS-algol Reference Manual}. \newblock PPRR~12-87, University of Glasgow, Dept. of Comp. Science, 1987. \bibitem[Har88]{Harp85} R. Harper. \newblock Modules and Persistence in Standard ML. \newblock In M.P. Atkinson, P. Buneman, and R. Morrison, editors, {\it Data Types and Persistence}, Topics in Information Systems, Springer-Verlag, 1988. \bibitem[Heh84]{Hehn84} E.C.R. Hehner. \newblock {\it The Logic of Programming}. \newblock Prentice-Hall International, 1984. \bibitem[HFLP89]{HFLP89} L.M. Haas, J.C. Freytag, G.M. Lohmann, and H. Pirahesh. \newblock Extensible Query Processing in Starburst. \newblock In {\it ACM-SIGMOD International Conference on Management of Data}, pages~377--388, Portland, Oregon, 1989. \bibitem[HMT88]{HMT88} R. Harper, R. Milner, and M. Tofte. \newblock {\it The Definition of Standard ML (Version 2)}. \newblock LFCS Report Series~ECS-LFCS-88-62, Department of Computer Science, University of Edinburgh, August 1988. \bibitem[Hoa69]{Hoar69} C.A.R. Hoare. \newblock An Axiomatic Approach to Computer Programming. \newblock {\it Communications of the ACM}, 12:576--581, 1969. \bibitem[HR83]{HaRe83a} T. H\"arder and A. Reuter. \newblock Database Systems for Non-Standard Applications. \newblock In {\it Proc. Int. Computing Symposium}, Teubner-Verlag, Stuttgart, Erlangen, West Germany, March 1983. \bibitem[Ive79]{Iver79} K.E. Iverson. \newblock Operators. \newblock {\it ACM Transactions on Programming Languages and Systems}, 1(2):161--176, October 1979. \bibitem[JGL*88]{JGLR88} W. Johannsen, L. Ge, W. Lamersdorf, K. Reinhard, and J.W. Schmidt. \newblock Database Application Support in Open Systems: Language Support and Implementation. \newblock In {\it Proc. IEEE 4th Int. Conf. on Data Engineering}, Los Angeles, USA, February 1988. \bibitem[JLS85]{JLS85} M. Jarke, V. Linnemann, and J.W. Schmidt. \newblock Data Constructors: On the Integration of Rules and Relations. \newblock In {\it 11th Intern. Conference on Very Large Data Bases, Stockholm}, August 1985. \bibitem[JS82]{JaSc82} G. Jaeschke and H.-J. Schek. \newblock Remarks on the Algebra of Non First Normal Form Relations. \newblock In {\it Proc. ACM SIGACT-SIGMOD Symp. Principles of Database Systems}, pages~124--138, Los Angeles, March 1982. \bibitem[KC86]{KhCo86} S. Khoshafian and G. Copeland. \newblock Object Identity. \newblock In {\it Proc. of 1st Int. Conf. on OOPSLA}, Portland, Oregon, October 1986. \bibitem[KMP*83]{Reim83} J. Koch, M. Mall, P. Putfarken, M. Reimer, J.W. Schmidt, and C.A. Zehnder. \newblock {\it Modula/R Report, Lilith Version}. \newblock Technical Report, Institut f\"ur Informatik, ETH Z\"urich, Switzerland, February 1983. \bibitem[KR81]{KuRo81} C.H. Kung and J.T. Robinson. \newblock On Optimistic Methods for Concurrency Control. \newblock {\it ACM Transactions on Database Systems}, 6(2), 1981. \bibitem[KV87]{KhVa88} S. Khoshafian and P. Valduriez. \newblock Sharing, Persistence, and Object Orientation: A Database Perspective. \newblock In {\it Proc. of the Workshop on Database Programming Languages, Roscoff, France}, pages~181--195, September 1987. \bibitem[LAB*89]{L*81} B. Liskov, R. Atkinson, T. Bloom, E. Moss, J.C. Schaffert, R. Scheifler, and A. Snyder. \newblock {\it CLU Reference Manual}. \newblock Springer-Verlag, 1989. \bibitem[LEE*87]{L*87} W. Lamersdorf, H. Eckhardt, W. Effelsberg, W. Johannsen, K. Reinhard, and J.W. Schmidt. \newblock Database Programming for Distributed Office Systems. \newblock In {\it Proc. IEEE Office Automation Symposium}, Gaithersburg, MD, 1987. \bibitem[LG86]{LiGu86} B. Liskov and J. Guttag. \newblock {\it Abstraction and Specification in Program Development}. \newblock {\it The MIT Electrical Engineering and Computer Science Series}, MIT Press, 1986. \bibitem[Lis84]{Lisk84} B. Liskov. \newblock {\it The ARGUS Language and System}. \newblock Programming Methodology Group Memo~40, MIT, Laboratory of Computer Science, 1984. \bibitem[LR89]{LeRi89} C. L\'ecluse and P. Richard. \newblock {\it The O$_2$ Database Programming Language}. \newblock Rapport Technique~26-89, GIP Altair, Domaine de Voluceau Rocquencourt 78153 Le Chesnay Cedex - France, January 1989. \bibitem[LRV88]{LRV88} C. L\'ecluse, P. Richard, and F. Velez. \newblock O$_2$, an Object-Oriented Data Model. \newblock In {\it ACM-SIGMOD International Conference on Management of Data}, pages~424--433, June 1988. \bibitem[MAD87]{MAD87} R. Morrison, M.P. Atkinson, and A. Dearle. \newblock {\it Flexible Incremental Bindings in a Persistent Object Store}. \newblock Persistent Programming Research Report~38, Univ. of St. Andrews, Dept. of Comp. Science, June 1987. \bibitem[Mar88]{Marc88} S.T. March, editor. \newblock {\it Proc. of the 6th Entity-Relationship Conference}, North-Holland, 1988. \bibitem[Mat87]{Matt87} D. Matthews. \newblock Static and Dynamic Type Checking. \newblock In {\it Proc. of the Workshop on Database Programming Languages, Roscoff, France}, pages~43--52, September 1987. \bibitem[MBW80]{MyBeWo80} P.A. Mylopoulos, A. Bernstein, and H.K.T. Wong. \newblock A Language Facility for Designing Database-Intensive Applications. \newblock {\it ACM Transactions on Database Systems}, 5(2):185--207, June 1980. \bibitem[MD86]{MaDa86} F. Manola and U. Dayal. \newblock PDM: An Object-oriented Data Model. \newblock In {\it Proc. Int. Workshop on Object-oriented Database Systems}, pages~18--25, September 1986. \bibitem[MD89]{McCD89} D.R. McCarthy and U. Dayal. \newblock The Architecture of an Active Data Base Management System. \newblock In {\it ACM-SIGMOD International Conference on Management of Data}, pages~215--224, Portland, Oregon, June 1989. \bibitem[Mer77]{Merr77} T.H. Merret. \newblock Relations as Programming Language Elements. \newblock {\it Information Processing Letters}, 6(1):29--33, February 1977. \bibitem[Mer84]{Merr84} T.H. Merrett. \newblock {\it Relational Information Systems}. \newblock Reston Publishing Co., Reston, Virginia, 1984. \bibitem[Mey86]{Meyer86} B. Meyer. \newblock Genericity versus Inheritance. \newblock In {\it Proc. of 1st Int. Conf. on OOPSLA}, pages~391--405, Portland, Oregon, October 1986. \bibitem[Mey88]{Meyer88} B. Meyer. \newblock {\it Object-oriented Software Construction}. \newblock {\it International Series in Computer Science}, Prentice Hall, 1988. \bibitem[Mil78]{Miln78} R. Milner. \newblock A Theory of Type Polymorphism in Programming. \newblock {\it Journal of Computer and System Sciences}, 17:348--375, 1978. \bibitem[MJAP86]{MSOP86} D. Maier, Stein J., Otis A., and A. Purdy. \newblock Development of an Object-Oriented DBMS. \newblock In {\it Proc. Int. Conf. on OOPSLA}, Portland, Oregon, October 1986. \bibitem[MRS84]{MRS84} M. Mall, M. Reimer, and J.W. Schmidt. \newblock Data Selection, Sharing and Access Control in a Relational Scenario. \newblock In M.L. Brodie, J.L. Myopoulos, and J.W. Schmidt, editors, {\it On Conceptual Modelling}, Springer-Verlag, 1984. \bibitem[MRS89]{DAIDA4} F. Matthes, A. Rudloff, and J.W. Schmidt. \newblock {\it Data- and Rule-Based Database Programming in DBPL}. \newblock Esprit Project 892, DAIDA Workpackage IMP 3, Deliverable IMP 3.b, Fachbereich Informatik, Johann Wolfgang Goethe-Universit\"at, Frankfurt, West Germany, March 1989. \bibitem[MS87]{MaSt87} D. Maier and J. Stein. \newblock Development and Implementation of an Object-Oriented DBMS. \newblock In {\it Research Directions in Object-Oriented Programming}, pages~355--392, MIT Press, 1987. \bibitem[MS89]{MaSc89} F. Matthes and J.W. Schmidt. \newblock The Type System of DBPL. \newblock In {\it Proc. of the 2nd Workshop on Database Programming Languages, Portland, Oregon}, pages~255--260, June 1989. \bibitem[MW80]{MyWo80} J. Mylopoulos and H.K.T. Wong. \newblock Some features of the Taxis data model. \newblock In {\it 6th Intern. Conf. on Very Large Data Bases}, Montreal, Canada, October 1980. \bibitem[Naq89]{Naqv89} S.A. Naqvi. \newblock Stratification as a Design Principle in Logical Query Languages. \newblock In {\it Proc. of the 2nd Workshop on Database Programming Languages, Salishan Lodge, Oregon}, June 1989. \bibitem[NT89]{NaTs89} S. Naqvi and S. Tsur. \newblock {\it A Logical Language for Data and Knowledge Bases}. \newblock Computer Science Press, 1989. \bibitem[OBB89]{OBBT89} A. Ohori, P. Buneman, and V. Breazu-Tannen. \newblock Database Programming in Machiavelli -- a Polymorphic Language with Static Type Inference. \newblock In {\it ACM-SIGMOD International Conference on Management of Data}, pages~46--57, Portland, Oregon, 1989. \bibitem[Oho88]{Ohor88} A. Ohori. \newblock Semantics of Types for Database Objects. \newblock In {\it Proc. International Conference on Database Theory}, pages~239--251, Volume~326 of Lecture Notes in Computer Science, August 1988. \bibitem[OST83]{OST83} T.W. Olle, H.G. Sol, and C.J. Tully, editors. \newblock {\it Information Systems Design Methodologies: A Feature Analysis}. \newblock North-Holland, 1983. \bibitem[OSV82]{OSVS82} T.W. Olle, H.G. Sol, and A.A. Verrijin-Stuart, editors. \newblock {\it Information Systems Design Methodologies: A Comparative Review}. \newblock North-Holland, 1982. \bibitem[OSV86]{OSVS86} T.W. Olle, H.G. Sol, and A.A. Verrijin-Stuart, editors. \newblock {\it Information Systems Design Methodologies: Improving the Practice}. \newblock North-Holland, 1986. \bibitem[PA86]{PiAn86} P. Pistor and F. Andersen. \newblock Designing a Generalized NF2 Model with a SQL-Type Language Interface. \newblock In {\it Proc. 12 Int. Conf. on Very Large Data Bases, Kyoto}, pages~278--288, August 1986. \bibitem[PM88]{PeMa88} J. Peckham and F. Maryanski. \newblock Semantic Data Models. \newblock {\it ACM Computing Surveys}, 20(3):153--189, September 1988. \bibitem[RC87]{RiCa87} J. Richardson and M. Carey. \newblock Programming Constructs for Database System Implementation in EXODUS. \newblock In {\it ACM-SIGMOD International Conference on Management of Data}, San Francisco, CA, May 1987. \bibitem[Rey74]{Reyn74} J.C. Reynolds. \newblock Towards a theory of type structure. \newblock In {\it Colloquium sur la programmation}, pages~408--423, Volume~19 of Lecture Notes in Computer Science, Springer-Verlag, 1974. \bibitem[RLW85]{RLW85} P. Rovner, R. Levin, and J. Wick. \newblock {\it On Extending Modula-2 for Building Large, Integrated Systems}. \newblock Digital Systems Research Center Reports~3, DEC SRC Palo Alto, January 1985. \bibitem[RM87]{RoSt87} L. Rowe and Stonebraker M. \newblock The POSTGRES Data Model. \newblock In {\it Proc. 13th VLDB, Brighton}, pages~83--96, September 1987. \bibitem[RRU*83]{RRUZ83} J. Rebsamen, M. Reimer, P. Ursprung, C.A. Zehnder, and A. Diener. \newblock LIDAS -- The Database System for the Personal Computer Lilith. \newblock In {\it Proc. INRIA Workshop on Relational DBMS Design / Implementation / Use on Micro-Computers}, Toulouse, February 1983. \bibitem[RS81]{Reim81} M. Reimer and J.W. Schmidt. \newblock {\it Transaction Procedures with Relational Parameters}. \newblock Report~45, Institut f\"ur Informatik, ETH Z\"urich, Switzerland, October 1981. \bibitem[SAM89]{SAM89} J. Stein, T.L. Anderson, and D. Maier. \newblock Mistaking Identity. \newblock In {\it Proc. of the 2nd Workshop on Database Programming Languages, Salishan Lodge, Oregon}, June 1989. \bibitem[SCB*86]{S*86} C. Schaffert, T. Cooper, B. Bullis, M. Kilian, and C. Wilpolt. \newblock An Introduction to Trellis/Owl. \newblock In {\it Proc. of 1st Int. Conf. on OOPSLA}, pages~9--16, Portland, Oregon, October 1986. \bibitem[Sch77]{Schm77} J.W. Schmidt. \newblock Some High Level Language Constructs for Data of Type Relation. \newblock {\it ACM Transactions on Database Systems}, 2(3), September 1977. \bibitem[Seb89]{Sebe89} R.W. Sebesta. \newblock {\it Concepts of Programming Languages}. \newblock {\it Benjamin/Cummings Series in Computer Science}, Benjamin/Cummings Publishing Company, Inc., 1989. \bibitem[SEM88]{SEM88} J.W. Schmidt, H. Eckhardt, and F. Matthes. \newblock {\it DBPL Report}. \newblock DBPL-Memo~111-88, Fachbereich Informatik, Johann Wolfgang Goethe-Universit\"at, Frankfurt, West Germany, 1988. \bibitem[SFL83]{SFL83} J.M. Smith, S. Fox, and T. Landers. \newblock {\it ADAPLEX: Rationale and Reference Manual (2nd ed.)}. \newblock Technical Report, Computer Corporation of America, Cambridge, Mass., 1983. \bibitem[Shi81]{Ship81} D.W. Shipman. \newblock The Functional Data Model and the Data Language DAPLEX. \newblock {\it ACM Transactions on Database Systems}, 6(1):134--173, 1981. \bibitem[SM80]{Schm80} J.W. Schmidt and M. Mall. \newblock {\it Pascal/R Report}. \newblock Bericht~66, Fachbereich Informatik, Universit\"at Hamburg, West Germany, January 1980. \bibitem[SP82]{ScPi82} H.-J. Schek and P. Pistor. \newblock Data Structures for an Integrated Data Base Management and Information Retrieval System. \newblock In {\it Proc. 8th Int. Conf. on VLDB, Mexico City}, pages~197--207, September 1982. \bibitem[SS77]{SmSm77} J.M. Smith and D.C.P. Smith. \newblock Database Abstractions: Aggregation and Generalization. \newblock {\it ACM Transactions on Database Systems}, 2(2):105--133, June 1977. \bibitem[SSB86]{SSB86} D. Stemple, T. Sheard, and B. Bunker. \newblock Abstract Data Types in Databases: Specification, Manipulation and Access. \newblock In {\it Proc. of the IEEE 2nd International Conference on Data Engineering}, pages~590--597, Los Angeles, California, February 1986. \bibitem[SSW80]{SSW80} P. Scheuermann, G. Schiffner, and H. Weber. \newblock Abstraction Capabilities and Invariant Properties Modelling within the Entity-Relationship Approach. \newblock In P.P.S. Chen, editor, {\it Entity-Relationship Approach to System Analysis and Design}, pages~121--140, North-Holland, 1980. \bibitem[Str67]{Stra67} C. Strachey, editor. \newblock {\it Fundamental concepts in programming languages}. \newblock Oxford University Press, Oxford, 1967. \bibitem[SWBM89]{SWBM89} J.W. Schmidt, I. Wetzel, A. Borgida, and J. Mylopoulos. \newblock Database Programming by Formal Refinement of Conceptual Designs. \newblock {\it IEEE -- Data Engineering}, September 1989. \newblock (in press). \bibitem[Tei75]{Teit75} W. Teitelman. \newblock {\it INTERLISP reference manual}. \newblock Technical Report, Xerox Palo Alto Research Center, Calif., 1975. \bibitem[TYF86]{TYF86} T.J. Teorey, D. Yang, and J.P. Fry. \newblock A logical design methodology for relational databases using the extended entity relationship model. \newblock {\it ACM Computing Surveys}, 18(2):197--222, June 1986. \bibitem[TZ86]{TsZa86} S. Tsur and C. Zaniolo. \newblock LDL: a logic-based data language. \newblock In {\it Proc. 12th Conf. on VLDB}, Kyoto, Japan, August 1986. \bibitem[Ull87]{Ullm87} J.D. Ullman. \newblock Database Theory --- Past and Future. \newblock In {\it 6th PODS}, pages~1--10, 1987. \bibitem[Wir71]{Wirt71} N. Wirth. \newblock The programming language PASCAL. \newblock {\it Acta Informatica}, 1(1):35--63, 1971. \bibitem[Wir87]{Wirt87a} N. Wirth. \newblock {\it The Programming Language Oberon}. \newblock Technical Report, Institut f\"ur Informatik, ETH Z\"urich, Switzerland, 1987. \bibitem[Zam88]{Zamu88} A.V. Zamulin. \newblock Data Base Programming Tools in the ATLANT Language. \newblock In {\it Advances in Database Technology, EDBT '88}, pages~563--566, Volume~303 of Lecture Notes in Computer Science, Springer-Verlag, 1988. \bibitem[Zdo87]{Zdon87} S.B. Zdonik. \newblock Can Objects Change Type? Can Type Objects Change? \newblock In {\it Proc. of the Workshop on Database Programming Languages, Roscoff, France}, September 1987. \end{thebibliography}