GCs in the news

Paulo Pinto via Digitalmars-d digitalmars-d at puremagic.com
Thu Jul 17 05:13:38 PDT 2014


On Thursday, 17 July 2014 at 11:15:10 UTC, Chris wrote:
> On Thursday, 17 July 2014 at 09:57:09 UTC, currysoup wrote:
>> On Thursday, 17 July 2014 at 09:26:38 UTC, Chris wrote:
>>> On Thursday, 17 July 2014 at 09:20:36 UTC, Russel Winder via 
>>> Digitalmars-d wrote:
>>>> It appears still to be a general meme that performance 
>>>> required no GC
>>>> and GC mean poor performance. The debate has been restarted 
>>>> on the Go
>>>> mailing list under the banner "go without garbage 
>>>> collector". The
>>>> response to will Go remove the garbage collector was somewhat
>>>> unequivocal: nope.
>>>
>>> That's good news in a way. If a big company accepts GC and 
>>> the Go crowd go with it (pardon the pun), then it will find 
>>> more acceptance (as Paulo pointed out in a different thread).
>>
>> It's not about "acceptance", it's about the reality that a GC 
>> is not a universal solution to memory management.
>
> Point taken. But as has been said before 90-95% of all apps can 
> live happily with GC, and if you want, you can still go bare 
> metal with D. The security GC offers should not be 
> underestimated either. With "acceptance" I meant that people 
> see "it cannot be that bad after all for *most* applications". 
> The GC issue is often cited as a D-eal breaker. I understand 
> that there are applications that need total control over the 
> memory. But those apps have always been programmed in C or any 
> other close-to-the-machine language, and even then programmers 
> (in gaming for example) have to use additional tricks and hacks 
> to squeeze out every little bit of performance. What D has to 
> do is to facilitate control over the memory, but I still 
> consider it a systems programming language due to the fact that 
> it has many things to offer as regard the direct interaction 
> with the machine that Java and C# don't. Can you write a device 
> drive in Java, if yes, tell me how, I'm interested.

Easy, like in any language that offers FFI.

Expose a Driver class with native method declarations, whose 
implementation is written in Assembly.

The SquakVM used to drive SunSPOT devices had the device drivers 
written in Java.

There are quite a few other examples in the embedded market, like 
the MicroEJ platform.

That is no different from writing drivers in ANSI C, which 
provides zero features for hardware interaction.

--
Paulo


More information about the Digitalmars-d mailing list