[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Changes I've been thinking of...

From: David Chisnall
Subject: Re: Changes I've been thinking of...
Date: Sat, 10 Oct 2009 11:07:14 +0100

On 10 Oct 2009, at 04:26, Jamie Ramone wrote:

Well, for me llvm and having a garbage collector and blocks would make gnustep
much more interesting.

Maybe, maybe not. After studying the Grand Central Dispatch docs, I
realized I could implement the whole thing without the need for
compiler awareness (i.e. as a pure library, no ^ operator). The only
thing it would miss would be the environment snapshots, but this
property is not essential. And such code could also be (partly)
included in the GCC so one could end up having blocks with compiler
awareness. And considering that the GCC is freedomware, and can thus
have new features added any time, I don't see it as being THAT much
behind some other compilers. As for GC, do you REALLY want that? I
think it's way overrated. It tends to encourage bad programming
practices, and usually kills performance.

For what it's worth, we had working blocks and garbage collection before Apple. By several years for GC, by a few months for blocks[1], and blocks are used EtoileFoundation's collection categories.

I've never used the GC stuff in GNUstep, but apparently it works, and there's been ongoing work to make it compatible with Apple's implementation.


[1] Supported natively by the new runtime. Needs the ObjectiveC2 framework from Étoilé with the GCC runtime. Requires using clang to compile.

-- Sent from my Cray X1

reply via email to

[Prev in Thread] Current Thread [Next in Thread]