On Thursday, 12 February 2015 at 11:11:53 UTC, ponce wrote:
On Thursday, 12 February 2015 at 10:24:38 UTC, Mike Parker
wrote:
On 2/12/2015 6:09 PM, weaselcat wrote:
On Thursday, 12 February 2015 at 08:33:35 UTC, Kagamin wrote:
Truth be told, D has no guideline for deterministic
destruction of
managed resources.
+1
don't complain about people wondering why class destructors
don't work
when there's no _real_ way to do it in D beyond 'drop down to
C level
and get going.' D is absolutely horrid for resource
management.
I'm not complaining. I'm simply suggesting that the very word
"destructor" likely plays a role in the misconception that
class destructors behave as they do in C++. However, I do
think that when moving from one language to another, there has
to be a certain expectation that things are going to be
different and it shouldn't be a surprise when they are.
What I think is that the GC should simply never call the
destructors.
The GC calling class destructors is currently a 50% solution
that provide illusory correctness.
s/class destructors/any destructors/
It now calls struct destructors, too, IIRC, at least when the
structs are in GC managed arrays.