Xdg-list digest, Vol 1 #432 - 11 msgs

Dave Malcolm david at davemalcolm.demon.co.uk
Wed Jul 23 21:37:10 EEST 2003

On Wed, 2003-07-23 at 10:19, David Faure wrote:
> On Wednesday 23 July 2003 06:43, Linas Vepstas wrote:
> > Do you actually have a proposal for something better?
> Yes - what about splitting glib? IMHO it's fine to have a lib that provides
> linked lists and other containers, for C programs and libraries (if it is indeed
> proven that low-level libraries like Xr, freetype or Xft will want to use it).

To some extent the split has already happened.

I'm looking at the CVS version here at the GNOME website:

The "gobject" subdirectory of "glib" contains the home-made object
system, which I suspect is too controversial to be widely adopted beyond
the GTK/GNOME development community.

The "glib" subdirectory of "glib" contains the linked lists, hash
tables, unicode support etc, which IMHO is much less controversial -
it's essentially a sane, clean, well-tested, cross-platform C-style
C-based API; in many ways what you've described.

Annoyingly, both directories are named "glib"; this may be the source of
much confusion.  Further discussion probably ought to specify which glib
is being referred to...  If anyone can face restarting this thread, that
is :-)  (my apologies for prolonging it)

I believe there are separate pkg-config pc files for glib (the inner
directory), and for gobject.  So you can install the simple stuff
without bringing in the C-based object system.  Though I'm not 100% sure
about that.

There are a couple of other subdirectories of the outer "glib"
directory, with their own pc files: gmodule (cross-platform support for
DLLs/.so files), and gthread (cross-platform threading wrappers), though
I don't think these are especially relevant to this discussion.

> But declaring as "standard" a library that patches up an incomplete home-made object 
> concept on top of a language that doesn't support objects, is nonsense: if people
> want to use objects, they have a real OO programming language for that: C++.


Dave Malcolm
Disclosure/disclaimer thingummy:  I code using GTK and GNOME on a daily basis, if anyone cares about any bias of mine. I haven't done any Qt or KDE coding.

More information about the xdg mailing list