You can’t go far in the object database world without ending up in the proximity of a certain Thomas Atwood. He set up Ontologic and is a founding member of both Objectivity and Object Design. As such he has good credentials as a spokesperson for the object-oriented community. Consequently, any company that merits Atwood’s personal attention is probably worth a closer examination. At present he is executive vice-president of Burlington, Massachusetts-based Object Design Inc. Atwood says that he left Ontologic because he wanted to build up his own management team. Object Design differs from Ontologic in its philosophy, since the latter company has gambled on its database product being acceptable to mainstream data processing departments within a year or two and so it has concentrated on adding top end tools. Object Design, on the other hand, is optimising its database, ObjectStore, to be a very fast database for interactive design and office automation. Throughout the company’s first and second round of financing Atwood was keen to get international funding because he believes that 50% of the market for ObjectStore will be outside the US. Conseqently, Object Design numbers the Japanese venture capital group Orion Ventures along with Philips NV and Ing C Olivetti SpA among its investors. Before Atwood founded Ontologic he worked on DEC’s Trellis Owl project to develop an object-oriented database environment.
Decent offering
Trellis is now being marketed as a product (CI No 1,556) and Atwood thinks it will be a decent object-oriented offering when it is able to reference persistent objects, as it will in the next release. However, he is unsure whether DEC is a large enough company to carve out a significant market share for Trellis – a proprietary language. Most people within the object-oriented community believe that C++ is now the de facto object-oriented standard language. This is because around 75% of all workstations run C programs and so will likely make the transition to C++. Atwood thinks that C++ is an easy enough language to use as long as the compiler is stabilised and debuggers are available. In general Atwood believes it takes about three months to learn how to program in C++ and a further six months to come to terms with the concepts of object-oriented programming. In Atwood’s opinion the ability to learn and use object-oriented techniques serves to distinguish the good programmer from the bad. He is undecided whether C++ makes it any easier to learn object-oriented techniques – indeed he is aware that some Cobol programmers find it easier to use Smalltalk because of similarities in the reverse syntax. However, he thinks that if object-oriented technology is to become accepted in data processing departments, object-oriented Cobol will make the breakthrough, a breakthrough he thinks will happen by 1993 at the latest.
– By Katy Ring –
But the ObjectStore database is a workstation product and has three main components: DBMS Runtime, Application Interfaces and C++ development tools. It has been designed and developed to handle persistent data as fast as transient data via its virtual memory mapping architecture. (Transient data lasts as long as a procedure invocation or as long as a process, whereas persistent data is managed by the database runtime). The architecture enables ObjectStore to retrieve data from the disk or memory through a single-level store of objects. It is this functionality that makes the database as fast in its environment of local area networked Unix workstations and servers as most single user applications. The other highly marketable feature of the database as far as Atwood is concerned is that it offers a low-cost migration path for users with C applications. Indeed, he says that he has won customers over from other object databases with this feature alone. Atwood chuckled as he explained that ObjectStore offers conversion by deletion. What this means is that C programs are converted by deleting existing read/write code and replacing it with as few as three lines of code calling Obj
ectStore. Furthermore, because the database uses the same format between data structures as C, C data stored in existing file systems can be easily converted to use ObjectStore. Existing applications and libraries written in C can be integrated with new ones in C++. There is no question but that C++ is dear to Atwood’s standardising heart. After all Unix Systems Laboratories is licensing the first module of its parameterised types for C++ Release 3.0 from Object Design. (Parameterised types are templates to help in the development of standard libraries of reusable code). Cambridge, Massachusetts-based Saber Software Inc supports the third module of AT&T’s parameterised types and was, thus a good fit for a strategic alliance with Object Design. The two are closely integrating the Saber-C++ programming environment with the ObjectStore object-oriented database and will jointly market the products. When asked whether he thought the relational vendors will collaborate with the object vendors, Atwood replied, the weak players will co-operate and the strong players will compete. The stronger players will go ahead and attempt to layer object-oriented functionality on top of the relational system to turn them into born again object systems. This is not a move that Atwood welcomes since he believes it will violate the object-oriented method of encapsulation by exporting relational data structures.
Same mistake again
He concedes that the past won’t go away but points out that evolution means letting things die. In his opinion the best compromise between the two generations of database lies with an object-oriented structured query language. As SQL exists at present there is a clash between its own compiler as an intermediate language and the programming language variables. As Atwood sees it there are two options, the same mistake could be made again – that is an extension could be made to SQL and stuffed into object-oriented language expressions so that programmers have to learn two languages and how they go together; or the reverse could be done. That is Object SQL could adopt the syntax of the programming language to maintain the common semantics of the object model leading to a cleaner, simpler implementation. As for concerns that object-oriented programming requires a methodology before it can become universally accepted, Atwood says this is not so because it is a programming paradigm that reflects the real world so that you just have to think normally. To impose a design methodology would, said Atwood, be like taking a long path to walk a short distance.