render@m.cs.uiuc.edu (08/23/89)
Written 11:51 pm Aug 21, 1989 by dennis@boulder.colorado.edu: >I would like to challenge the idea that seamless integration >of a programming language with the database (aka persistent >programming languages) is a good idea. [some text deleted for brevity] >It is true that an OO model would fit C++ well, but it >doesn't fit well with Ada, and certainly not Prolog. >Whereas, there are well defined procedural interfaces >defined for relational models. I think this is because the relation is such a primitive data type that any decent PL can interface with it. All you need is some support for a set or stream of records (tuples) and you've got it made. The power of the OO model is in the type constructors and the binding of operations to data types, and this makes it more difficult to interface to languages which don't have similar type support. In particular, languages like Prolog would likely have more difficulty interacting with an OODBMS because their two computational models are so different. Still, the OO and relational models have common properties. Ultimately, a persistent object collection and a relation are both a set of records (objects and tuples, respectively). Query languages designed for OODBMS (see Gail Shaw's work, Brown U.) are based on the relational calculus. The big differences in the two models lie in such things as item identity, operation definition, type construction and the like. Still, there may be things I haven't realized that make it more difficult for a PL to interact with an OODBMS. Could you elaborate on your findings? hal render univ. of illinois render@cs.uiuc.edu