DIP11: Automatic downloading of libraries
Steven Schveighoffer
schveiguy at yahoo.com
Wed Jun 15 07:59:17 PDT 2011
On Wed, 15 Jun 2011 10:38:28 -0400, Andrei Alexandrescu
<SeeWebsiteForEmail at erdani.org> wrote:
> On 6/15/11 8:33 AM, Steven Schveighoffer wrote:
>> I can't really think of any other issues.
>
> Allow me to repeat: the scheme as you mention it is unable to figure and
> load dependent remote libraries for remote libraries. It's essentially a
> flat scheme in which you know only the top remote library but nothing
> about the rest.
>
> The dip takes care of that by using transitivity and by relying on the
> presence of dependency information exactly where it belongs - in the
> dependent source files. Separating that information from source files
> has two liabilities. First, it breaks the whole transitivity thing.
> Second, it adds yet another itsy-bitsy pellet of metadata/config/whatevs
> files that need to be minded. I just don't see the advantage of imposing
> that.
Yes, these are good points. But I think Dmitry brought up good points too
(how do you specify that TreeMap.d needs to be compiled too?).
One possible solution is a central repository of code. So basically, you
can depend on other projects as long as they are sanely namespaced and
live under one include path.
I think dsource should provide something like this. For example:
http://www.dsource.org/import
then if you wanted dcollections.TreeMap, the import would be:
http://www.dsource.org/import/dcollections/TreeMap.d
Of course, that still doesn't solve Dmitry's problem. We need to think of
a way to do that too.
Still thinking....
-Steve
More information about the Digitalmars-d
mailing list