You don't like GC? Do you?
Stanislav Blinov
stanislav.blinov at gmail.com
Fri Oct 12 23:35:19 UTC 2018
On Friday, 12 October 2018 at 21:39:13 UTC, Atila Neves wrote:
> D isn't Java. If you can, put your data on the stack. If you
> can't, `new` away and don't think about it.
Then five years later, try and hunt down that mysterious heap
corruption. Caused by some destructor calling into buggy
third-party code. Didn't want to think about that one either?
> The chances you'll have to optimise the code are not high. If
> you do, the chances that the GC allocations are the problem are
> also not high. If the profiler shows they are... then remove
> those allocations.
>> I mean come on, it's 2018. We're writing code for multi-core
>> and multi-processor systems with complex memory interaction.
>
> Sometimes we are. Other times it's a 50 line script.
There is no "sometimes" here. You're writing programs for
specific machines. All. The. Time.
>> Precisely where in memory your data is, how it got there and
>> how it's laid out should be bread and butter of any D
>> programmer.
>
> Of any D programmer writing code that's performance sensitive.
All code is performance sensitive. Whoever invented that
distinction should be publicly humiliated. If it's not speed,
it's power consumption. Or memory. Or I/O. "Not thinking" about
any of that means you're treating your power champion horse as if
it was a one-legged pony.
Advocating the "not thinking" approach makes you an outright evil
person.
More information about the Digitalmars-d
mailing list