why does DMD compile "hello world" to about 500 _kilobytes_ on Mac OS X [x86_64]?!?

Abe via Digitalmars-d digitalmars-d at puremagic.com
Sun Aug 31 16:51:39 PDT 2014


Dear all,

Me: a very experienced computer programmer, a newbie to D.

The test program:



    import std.stdio;

    void main() {
        writeln("hello world!");
    }



The result:

    > ls -l foo
    -rwxr-xr-x  1 Abe  wheel  502064 Aug 31 18:47 foo

    > file foo
    foo: Mach-O 64-bit executable x86_64

    > ./foo
    hello world!


Please note: 502064 bytes!!!  [for the curious: 490.296875
kilobytes]


The compiler:

    DMD64 D Compiler v2.066.0
    Copyright (c) 1999-2014 by Digital Mars written by Walter 
Bright
    Documentation: http://dlang.org/


The OS: Mac OS X 10.6.8


The question: why is Hello World so frickin` huge?!?

[FYI: using "dmd -O" instead of plan "dmd" makes no difference in
the size of the executable]


— Abe


More information about the Digitalmars-d mailing list