Don't bloat Gnome-libs, bloat Gtk+/Glib
- From: Michael Meeks <michael ximian com>
- To: Havoc Pennington <hp redhat com>
- Cc: Owen Taylor <otaylor redhat com>, gnome-hackers gnome org
- Subject: Don't bloat Gnome-libs, bloat Gtk+/Glib
- Date: Mon, 12 Mar 2001 19:13:16 -0500 (EST)
Hi,
On 10 Mar 2001, Havoc Pennington wrote:
> We have yet another GNOME 2 writeup...
> http://canvas.gnome.org/~mjs/proposal.html
>
> I think the largest and most substantive point of disagreement right
> now is library packaging, i.e. lots of small modules vs. two big
> modules.
While I agree with much of the propsal, and particularly the
splitting of the libraries I must say I'm mildly amused that members of
the Gtk+ team have the gall to lecture Gnome people on modularity [1]
<case_study>
For example, I think it is extremely important that in the free
software community we stop duplicating code [2]. One good place to start
helping Netscape / OpenOffice share a common cross platform compatibility
layer with us would be at the system abstraction level.
This is (unusualy) somewhere where all the projects agree 'C' is
the best choice of language, and somewhere where all the projects have a
simple set of module dependencies, and where real co-operation would be
possible.
Of course, having done this it would be far easier to start
merging higher level parts of these projects to reduce wasteful
redundancy, but, instead of having a sensible system abstraction in glib,
'we' are pushing more and more clutter into it. eg. the new, meaner
cleaner glib has:
Sensible:
* sized types: guint16 etc.
* generic warning/error code
* helpful assertion macros
* a niceish IO abstraction
* thread abstraction
...
Incredible [4]:
* Lots of C helpers, GList, etc.
* A cut down XML parser
* A simple lexical scanner
* A simple C type system
...
</case_study>
And so, it becomes progressively more impossible to try and get
people to cooperate using glib becuase it has lots of crud that people
don't want to link to - so instead every user of GNOME and Mozilla pays
aper function penalty.
[ And this is without the almost impossibility of encouraging
people to fuse duplicate projects, make non-technical compromises to share
code, loose overall control of the result etc. etc. ]
So yes, keeping the code in small modules is good, but please
don't eternaly keep moving code into Gtk+/glib. I in no way look forward
to the day when ORBit,bonobo,evolution,mozilla,postgress etc. have been
'folded' into glib/Gtk+.
Regards,
Michael.
[1] - increasingly it seems that the Gtk+ team want to build everything
from GNOME into Gtk+ where it suits them to have it. Understandable in
many ways, and often resulting in greater code quality due to the mess
that exists in gnome-libs [3]
[2] - cf. Unix Sucks, etc. etc. ad-nauseum
[3] - I'm not optimistic that the eclectic maintainer situation that lead
to the mess in gnome-libs is going to improve at any stage without a full
migration away from gnome-libs ( so I don't altogether disapprove of this
strategy ).
[4] - don't misunderstand me, I think that moving the object system to
glib is far, far better than having it in Gtk+ where it clearly doesn't
belong.
--
mmeeks gnu org <><, Pseudo Engineer, itinerant idiot
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]