[comp.object] ObjectStore

gordon@mead.UUCP (Gordon Edwards) (08/23/90)

Does anyone know anything about an OODBMS named ObjectStore?  It was developed
by Object Design, Inc. and reportedly allows applications to be developed in
C++.

Please, post followups rather than replying by e-mail.  Our feed is supposed
to change any time and my e-mail address may not work. 

Thanks.

--
Gordon Edwards                                    Mead Data Central, Dayton OH

noren@dinl.uucp (Charles Noren) (08/24/90)

In article <1207@meaddata.mead.UUCP> mead!gordon@uccba.uc.edu writes:
>Does anyone know anything about an OODBMS named ObjectStore?  It was developed
>by Object Design, Inc. and reportedly allows applications to be developed in
>C++.

We are using ObjectStore by Object Design, Inc., so is another
project in our company (who alerted us to the product).  It is
a **very** fast and very easy-to-use Object-Oriented Database 
Management System.  Now I am an Objective-C bigot, but this database
with its seemless interface to C++ (and being the fastest according
to some internal studies) caused us to start using C++ so we could
use the full features of the database (it really pains me to say
that -- I am looking into interfacing Objective-C to it on my
own time).

How ObjectStore looks to your application is as follows:

 1.  You declare the root object of your application that
     will be your handle into the database as "persistent".
     This key word, which is similar to the C key word "static",
     declares that the life of your object will persist over
     the life of the database.

 2.  Referencing the database objects is done within a "transaction
     block" construct, that is a new key-word block statement with
     C++ curly-braces {}.

 3.  Adding new objects to the root object is done by using
     an overloaded C++ new operator (which has a corresponding
     overloaded delete operator).

Currently, Object Design provides a C++ compiler with the hooks
into the database.  It is a version of AT&T C-front with enhancements.
One of the major enhancements is parameterized types.  This alone
makes their compiler worth while (in fact, AT&T is going to use their
implementation of parameterized-types).  Other enhancements allow for
nice query capability to their aggregate classes, and a means to
declare an inverse relationship.  In the future, Object Design plans
to allow other C++ compilers to interface, particularly when other
compilers implement parameterized types.  Object Design also provides
a kernal group of classes that are extremely useful in creating
and manipulating C++ objects in and out of the database.  (You could
use the C++ compiler and class libraries without any database
features and have a "normal" C++ application).

With ObjectStore, you have the full expressive power (plus more)
of C++ to create general complex object structures.  This alone
provides what I want in manipulating the kind of objects I'm
maintaining in a Network Management System.  With the seaching
capabilities they provide through the query expressions, classes,
and iterators on aggregates I have the expressive power I want
in queries without SQL.

ObjectStore is in beta right now, however I find that the beta of
ObjectStore compares better in quality to some of the released
software of some other OODBMS's.  Object Design can be reached
at (617) 270-9797 (Eastern USA) or (213) 412-8411 (Los Angeles).



-- 
Chuck Noren
NET:     dinl!noren@ncar.ucar.edu
US-MAIL: Martin Marietta I&CS, MS XL8058, P.O. Box 1260,
         Denver, CO 80201-1260
Phone:   (303) 971-7930