4 ms·
The OpenDoc sources were on the developer CDs at the time as well. It wasn't really Open Source and as far as I recall you couldn't change and redistribute it,
by eschaton 11y ago
The OpenDoc sources were on the developer CDs at the time as well. It wasn't really Open Source and as far as I recall you couldn't change and redistribute it, but it could be quite handy for debugging as well as for seeing how everything fit together.
One of the biggest difficulties with OpenDoc development was the marriage to IBM's System Object Model (SOM) because C++ didn't support the required level of dynamism. That meant everything interfacing with OpenDoc components—which was ideally supposed to be everything!—had to round-trip through an IDL layer with a bunch of machine-generated glue code. Theoretically "direct-to-SOM" compilers were coming, where a class could be annotated and get SOM API & ABI compatibility, but I don't recall if one ever shipped for the Mac.
OpenDoc would have been far leaner and more comfortable to develop for if it had embraced a dynamic language like Objective-C, instead of immediately reaching for maximum language agnosticism and an IDL. Everyone who demanded cross-platform wasn't really going to develop for it anyway, and giving in to that just slowed it down.
(Incidentally, Dylan had the same problem: The "It needs infix syntax for me to even look at it!" developers were never going to use it anyway because it wasn't and never would be C, so the people working on it shouldn't have squandered multiple years of effort trying to please them instead of improving the tight, simple Lisp-syntax version.)