A betterC base

Rubn where at is.this
Fri Feb 9 20:37:33 UTC 2018


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.


More information about the Digitalmars-d mailing list