Remix.run Logo
WalterBright 5 days ago

Some comparison with D:

> Do I have access to an asm keyword,

Yes, D has a builtin assembler

> or can I easily link assembly files?

Yes

> Do I have access to the linker phase to customize the layout of the ELF file?

D uses standard linkers.

> Does it need a runtime to work?

With the -betterC switch, it only relies on the C runtime

> Can I disable the standard library?

You don't need the C runtime if you don't call any of the functions in it.

sph 4 days ago | parent | next [-]

Thanks. I haven’t played with D since it also had a closed source implementation (10+ years ago) and never kept up with its newer development. I should check it out again.

WalterBright 4 days ago | parent [-]

D is Boost licensed front to back, which is the free'est license out there.

GoblinSlayer 4 days ago | parent | prev [-]

I don't get what's up with the runtime hysteria. All languages have a runtime maybe except for assembler. And linux kernel itself is infamous for being not C by a large margin. And in general remove something important from any program and it will stop working.

muth02446 4 days ago | parent [-]

If you do embedded work, you often want to be in total control of all memory allocations. So it is good to know that the compiler will not produce some invisible heap allocations and there is a useful subset of the standard libray that does not use them either.