How to compile and link simple application?
Julian
julian.fondren at gmail.com
Mon Apr 8 19:43:11 UTC 2019
On Monday, 8 April 2019 at 19:29:33 UTC, 4544fa8d wrote:
> It's really not possible to call functions in modules like in
> any other languages? :S
What some other languages do is collect all of those calls into an
implicit function that's called before main(). What D does is run
that code at compile-time. Silly example:
import std.stdio;
T twice(T)(T n) { return 2 * n; }
auto x = twice(5);
void main() {
writeln(x);
}
Take a look at the compiled result: https://godbolt.org/z/8vLsv9
There's a twice() that's compiled in, but if you look at x it's
already the result of a call to twice():
int example.x:
.long 10
and the (unoptimized) main just fetches that number to print.
More information about the Digitalmars-d-learn
mailing list