Linked by Thom Holwerda on Sun 10th Feb 2008 14:12 UTC
OS/2 and eComStation "It just might be possible for Linux desktop users to get one of OS/2's best features: SOM (System Object Model). Of course, many of you are asking, 'SOM, What's the heck is SOM?' I'll tell you. It's a CORBA object-oriented shared library. Those of you who aren't programmers are doubtlessly staring cross-eyed at the screen right about now. For you: SOM is an easy-to-use universal programming library that both KDE and GNOME developers could use to create programs that would work in any Linux desktop environment."
Permalink for comment 300481
To read all comments associated with this story, please click here.
Nothing to see here
by sorpigal on Mon 11th Feb 2008 22:35 UTC
Member since:

I'm sure SOM is great and all, but object frameworks like this have been tried and are in use on Linux. There's a reason we don't all use one.

On the GNOME side you have corba/orbit/bonobo for IPC and embedding. For KDE you have DCOP and kparts. And GNUstep still has its own NeXT-style object system. DBUS is set to step into a set of DCOPs functionality, which is good, but it isn't for embedding or dynamic stuff like that, and I believe it replaces a subset of the gnome stack as well.

So why isn't there a universal object library like SOM in Linux? It's not just because it's a bad idea, but it's a question of herding cats. Having a well designed and complete one might be nice but the probability is that few would use it. Even if it were widely adopted many would still not use it; can you imagine Enlightenment or GNUstep changing their practices?

Like it or not there is no "silver bullet" for Desktop Linux.

Probably the most promising options we can explore, apart from fd.o-style cooperation (which incidentally is where most of the *useful* advances have come from lately) are the effort to make QT use the GTK main loop and an X extension for sharing theme/color data in a neutral fashion.

There is unlikely to ever be a unified desktop Linux API. The best thing we can do is to try and make it not matter which APIs you use.

Reply Score: 2