chicken-hackers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Chicken-hackers] [PATCH] Fix #1133


From: Felix Winkelmann
Subject: Re: [Chicken-hackers] [PATCH] Fix #1133
Date: Sat, 28 Jun 2014 17:39:35 +0200 (CEST)

> 
> I'm not convinced we need separate loading and importing either, as long
> as it doesn't interfere with separate compilation.  Right now everyone
> always ends up doing (use ...) anyway.  Perhaps Felix can show us an
> example where only an import (no loading of code) is useful, or otherwise
> how I'm missing the point?

Static linking? Having several modules (library units) in a single
library (as in libchicken itself)?

 We had these discussions many times and there is nothing that can be
done about it, with the exception of hiding it somehow behind modules,
or whatever.

> 
>> That got me thinking: maybe we could implement module versioning? Not
>> just put everything into lib/chicken/<API_VERSION> but proper
>> module.so.1.2.3 like other shared libraries? And somehow add this to
>> imported namespace (##module#1.2.3#procedure or so). In theory this
>> should allow to move stuff around, but can open a whole can of worms,
>> but still, what do you think?
> 
> I have no thoughts on this right now.  It could be a good idea, but
> I'm unable to foresee the consequences.

No thoughts here, too. But in my experience library versioning turns
out to be even more of a mess than without. You always end up in a
situation where two versions of the same module are required in the
same program, increasing code size and the chance of collisions, in
case both modules access limited resources. It's better fix the
conflict right away and avoid the duplication. But my experience is
limited, and perhaps Oleg means something entirely different.


felix



reply via email to

[Prev in Thread] Current Thread [Next in Thread]