"The std.stdio package imports most the standard library" etc.
Adam D. Ruppe via Digitalmars-d
digitalmars-d at puremagic.com
Sun Aug 31 17:19:42 PDT 2014
On Monday, 1 September 2014 at 00:10:25 UTC, Abe wrote:
> Is this roughly the same on all relevant platforms for DMD?
Yeah. If you used printf instead of writeln, the size gets down
to about 250K (on my linux anyway), which can then be stripped
down to 160K, showing that the rest of the size comes from
pulling in a lot of standard library code.
The rest of that 160 K is the druntime library, stuff like thread
support, memory management, etc. that is always present.
It is possible to strip that out too and make really tiny
executables (I've gone down to under 3KB before playing with
this, as have other people working in the embedded space), but
then you don't get any of the library and it is easier said than
done.
But you should compare this to other common programming
language's sizes:
* Java programs need the user to download like 20 MB of the JRE
to run
* Ditto for the .net/mono frameworks
* The ruby interpreter on my computer is about 18 MB
* etc etc etc
Compared to them, D programs are small. The big difference is
Java, .net, ruby, python, etc. are already popular enough to have
their libraries/support code pre-installed on the user's
computer. D programs, on the other hand, carry all their support
code with them in each executable (they're statically linked) so
they have better odds of just working without the user needing to
install other stuff that they prolly don't already have.
More information about the Digitalmars-d
mailing list