phobos dependencies

Dmitry Olshansky dmitry.olsh at gmail.com
Sat Dec 21 15:02:34 PST 2013


22-Dec-2013 02:16, monarch_dodra пишет:
> On Saturday, 21 December 2013 at 21:38:59 UTC, Dmitry Olshansky wrote:
>> As it stands the only thing lazy buys us is "pay as you touch"
>> contrary to "pay as you name the intent to touch". The problem is that
>> the payment is for the whole stock of the said "shop". I see second
>> problem (granularity of imports) as far more critical then the first
>> (condition under which the pieces are imported). The second problem
>> seems solvable within the current implementation, the first seems like
>> it would need arbitrary amount of time to fix and gains are marginal.
>
> We should also keep in mind that as we split up modules and split apart
> dependencies, it also means that *as* we import a specific package, we
> are increasing our "use/import" ratio, further diminishing the issue of
> "import things we don't need." (who would import "std.foo.bar.baz", if
> they weren't planning to use baz?).

The main gain is to the library code be it Phobos itself or any 3rd 
party code. Application code is import-happy by definition and only few 
folks at this level would care to import things in such a fine garined 
manner.

 >
 > Arguably, we'd get "quadratic" effectiveness ;)

In mind the constant factor is increasing (as in more files, more 
syscalls) but as the total LOCs per package version of a module stays 
the same I fail to see any substantial efficiency loss.

-- 
Dmitry Olshansky


More information about the Digitalmars-d mailing list