Re: Shipping Vera with 2.4
- From: Sander Vesik <sander_traveling yahoo co uk>
- To: Jody Goldberg <jody gnome org>
- Cc: GNOME Desktop Hackers <desktop-devel-list gnome org>
- Subject: Re: Shipping Vera with 2.4
- Date: Wed, 05 Mar 2003 14:59:28 +0000
Jody Goldberg wrote:
On Wed, Mar 05, 2003 at 02:11:13PM +0000, Sander Vesik wrote:
Havoc Pennington wrote:
If you had shared IPC, then you could have just specified a message to
add a new file, and a broadcast when the list changed, and that's it.
Saying 'and to add entries into the recently used files list you need to
link to this stack of libraries and use these APIs' is in fact
coinsiderably more complex code wise than specifying file locking. And also
raises teh question of how much impact will various bugs in the layer you
are linking to exposing you to and how you test it and so on.
I've got to disagree with you there Sander. In my experience it is
far far better to have a single implementation that can be
fixed as new subtleties arise, than a myriad of one off versions.
There are two key advantages to a shared implementation :
1) fixing 1 bug fixes all programs
2) having several programs using the same code accelerates the
finding of bugs.
Look at something as deceptively simple as opening a stdio FILE for
output and saving things. Most apps did not handle things like
setgid directories, or symlinks smoothly. Gedit added some support
for them but it did not work well on Solaris. I raided the code and
with lots of assistance polished it up and stuck it in libgsf. Now
all the apps using gsf get to benefit.
Having a librecentfiles that exposed a trivial interface and
handled file locking and contention smoothly seems like a much
better choice than waving our hands at the issue by writing a
detailed specification that boils down to
'do the right thing (please)'
If the librecentfiles - or similar - is a simple self contained library
that does one thing, does it well, does not contain non-trivial amounts of
copy-paste code and can be used with dlopen with no major hurdles from one
place, then I obviously agree. This changes largely for linking to a
multipurpose stack of libraries to get (essentialy) one function.
I'm not exactly a fan of everybody linking to a static expat library, but
its a sort of workable solution - the same would not apply to an evolving
infrastructure.
Not that a spec is a bad thing, but a solid implementation trumps it.
You normaly need a spec for a solid implementation, otherwise, how do you
tell its is doing what it is supposed to?
__________________________________________________
Do You Yahoo!?
Everything you'll ever need on one web page
from News and Sport to Email and Music Charts
http://uk.my.yahoo.com
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]