On 12/16/2011 10:53 PM, Trass3r wrote:
Am 16.12.2011, 22:45 Uhr, schrieb Andrei Alexandrescu
<seewebsiteforem...@erdani.org>:

On 12/16/11 3:38 PM, Trass3r wrote:
A related issue is phobos being an intermodule dependency monster.
A simple hello world pulls in almost 30 modules!
And std.stdio is supposed to be just a simple wrapper around C FILE.

In fact it doesn't (after yesterday's commit). The std code in hello,
world is a minuscule 3KB. The rest of 218KB is druntime.

Yep, the 30 modules is a measure I took before that commit.

Once we solve the static constructor issue, function-level linking
should take care of pulling only the minimum needed.

Also by pulling in I just meant the imports.
But the planned lazy semantic analysis should improve the situation.

I think it is already lazy?
---
module a;

void foo(){
    imanundefinedsymbolandcauseacompileerror();
}
---
---
module b;
import a;

void main(){
    foo();
}
---

$ dmd -c b # compiles fine

Reply via email to