On Friday, 9 February 2018 at 02:09:57 UTC, Jonathan M Davis wrote:
On Thursday, February 08, 2018 23:57:45 Rubn via Digitalmars-d wrote:
On Thursday, 8 February 2018 at 18:06:38 UTC, Walter Bright wrote:
> I.e. it isn't an issue of us D guys being dumb about the GC.

So you could say it's a design flaw of D, attempting to use a GC where it isn't suited?

You could say that, but many of us would not agree. Just because certain classes of GCs cannot be used with D does not mean that the fact that D has a GC built-in is not beneficial and ultimately a good design decision. Plenty of folks have been able to write very efficient code that uses D's GC. Obviously, there are use cases where it's better to avoid the GC, but for your average D program, the GC has been a fantastic asset.

- Jonathan M Davis

I didn't say that a GC isn't beneficial, the problem is if you are going to be using the GC there are plenty of other languages that implement it better. The language is designed around the GC. Anytime I try and use an associative array, my program crashes because of the GC. The workaround I need to do is just make every associative array static. Maybe if phobos could be built into a shared library it wouldn't be as big of a problem. But that's not the case, before someone goes around crying that Phobos CAN be built into a shared library, remember platform matters!

You can write efficient code with Java, and that has an entire VM running between the cpu and the language. Efficiency isn't the issue. Writing code that is both GC and non-GC code is extremely difficult to do correctly. That it just isn't worth it at the end of the day, it complicates everything, and that is the design flaw. Having to use a complicated inefficient GC is just a side effect of the greater issue.

Reply via email to