From kragen@dnaco.net Mon Jul 20 15:50:11 1998
Date: Mon, 20 Jul 1998 15:50:10 -0400 (EDT)
From: Kragen <kragen@dnaco.net>
Reply-To: Kragen <kragen@dnaco.net>
To: dave@scripting.com
Subject: Universal scripting on Linux
Message-ID: <Pine.SUN.3.96.980720152416.6874v-100000@picard.dnaco.net>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-Keywords:
X-UID: 637
Status: O
X-Status: 

Brief summary: there will be a standard language-independent scripting
API for Linux later this year.  (Some of it is available now.)

Well, as you know, the situation isn't terribly simple.  There are lots
of people, and none of the ones who are interested in scripting are
powerful enough to force a single scripting API, the way Microsoft and
Apple did.

There are three "desktop" projects for Linux, one of which is likely to
have a lot of influence in the near future.

The oldest one is CDE, the Common Desktop Environment developed by IBM
five years or so ago.  Most commercial Unix vendors have adopted CDE as
their standard.  I suspect that CDE will never be adopted on Linux for
several reasons:
- It's clunky, ugly, and not technically excellent.  Most of the influential
	Linux people are prejudiced against these things.
- It's proprietary; Linux vendors and Linux users tend to be prejudiced
	against proprietary software, since much of the cost benefit
	associated with Linux has to do with being able to freely duplicate
	configured machines, freely fix problems, and freely seek tech
	support.
- It's expensive.  If it were gratis, it might conceivably overcome the
	previous two objections, but it's not.

The next-oldest one is KDE, originally the Kool Desktop Environment --
more recently the K Desktop Environment.  Some folks at Troll Tech
decided to make Linux the perfect platform for novice users, building
on their proprietary cross-platform GUI toolkit, Qt (pronounced
"cute".), and so they started KDE.  More info at www.kde.org.

KDE has a lot of followers, but the proprietariness of the underlying
toolkit is a problem for a lot of people.  KDE is pretty stable now,
though, and is definitely the first choice of desktop for lots of
people for the time being.

Enter GNOME, the GNU Object Model Environment.  The implementation of
the GIMP, a PhotoShop competitor, included a GUI toolkit comparable to
Qt, known as GTK+.  Some people who didn't like Qt's proprietariness
started building a KDE competitor on top of GTK+.

The GNOME project has attracted the support of many of the most
prestigious people in the Linux community.  The GIMP developers are
(not surprisingly) behind it all the way; the Debian folks made a large
monetary donation toward its further development; and now Red Hat has
set up a lab (www.labs.redhat.com) to develop it.

For this lab, Red Hat hired Alan Cox, the current benevolent dictator
for the "Stable" Linux 2.0 kernel series (Linus is spending all his
time on the "development" 2.1 series), Carsten Haitzler, the primary
developer of Enlightenment, and Marc Ewing, one of the founders
of Red Hat.  These are extremely technically competent people.

Lots of the best and brightest Linux people are working on the GNOME
project.  And because they aren't bound by the proprietary Qt license
KDE is, they can develop much faster.  I expect them to surpass KDE in
functionality, stability, and users by the end of the year.

They've decided that all GNOME applications should export functionality
via CORBA.  Originally, they were using an ORB called Mico, but they've
decided they're going to have to write their own ORB to get acceptable
performance.

Of course, this means all GNOME apps will be remotely scriptable.  You
get your wish -- a standard, language-independent scripting mechanism
for Linux.  Oh, and it works over TCP/IP, too.

A paper on GNOME by Miguel de Icaza (who was one of the folks who led
the Linux-on-SPARC porting effort a few years ago) was presented at
Linux Expo.  It's at <URL:http://www.gnome.org/gnomepaper/index.html>.

Hope this helps.

Kragen



