[BioLib-dev] GSL
Hilmar Lapp
hlapp at gmx.net
Wed Aug 5 14:29:16 UTC 2009
On Aug 5, 2009, at 2:07 AM, Pjotr Prins wrote:
> On Tue, Aug 04, 2009 at 07:32:31PM -0400, Hilmar Lapp wrote:
>> Hi Pjotr - many systems come pre-installed with GSL these days. Is it
>> really wise not to just assume it as a system dependency?
>>
>> -hilmar
>
> That is a call we have to make. There are two problems with these
> type of dependencies:
>
> (1) libraries change
>
> (2) on different systems they are in different places
>
> The main reason I like to have the source base inside biolib is that
> when we do a release we have ONE source base. So bugs can be found,
> without the added complexity of (1).
You're really just shifting the complexity of (1) from the system
administrator of a user's (or developer's) machine to yourself as the
Biolib maintainer (or whoever comes after you). As not infrequently
the user doubles as the sysadmin on her machine, this is of course
nice for the Biolib user.
However, it does create an additional burden, and especially
responsibility, for the Biolib maintainers. I'm not convinced that
fulfilling that responsibility is one of the best ways Biolib
developers and maintainers can spend their time.
> Especially over time this is a great concern. On the Perl mailing
> list you encountered that this year with the staden_io_lib module -
> the interface changed.
I know. But it's also a very common situation that we all have to
learn how to deal with anyway. Bio::Graphics needs a certain version
of GD. Most systems come pre-installed with GD but in a version that's
too old, so most people end up having to upgrade their GD, or install
a newer version in parallel and then make sure their environment is
correct when compiling the GD perl bindings etc. The same is typically
true for DBI and the various DBD drivers. There are numerous other
examples.
> [...]
> With (2) is a particular concern since bio* developers are all over
> the place: different distros of Linux, OSX, Cygwin, Windows. Having
> the source tree in biolib kills those birds with one stone.
If there are no problems. As soon as there are (and there are bound to
be if the library is under active development) there may be more birds
to kill than you have stones (or time) for.
> [...]
> So in it goes, as far as I am concerned. If only for the fact the I
> only want the latest and greatest :-)
The other benefit that treating it as an external dependency has is
tempering that desire for the bleeding edge. The bleeding edge cuts
well, but it's full of blood too.
That all being said, having the GSL SWIG-mapped as a first class
library in Biolib so that all Bio* projects can take advantage of it
would be very cool in its own right.
-hilmar
--
===========================================================
: Hilmar Lapp -:- Durham, NC -:- hlapp at gmx dot net :
===========================================================
More information about the BioLib-dev
mailing list