swarm-support
[Top][All Lists]
Advanced

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

Re: [Swarm-Support] development priorities (was Re: Membership inSwarm D


From: Marcus G. Daniels
Subject: Re: [Swarm-Support] development priorities (was Re: Membership inSwarm Developmen Group)
Date: Wed, 15 Nov 2006 17:33:24 -0700
User-agent: Thunderbird 1.5.0.4 (Windows/20060516)

Bill Northcott wrote:
With the resurgence of Apple from a basket case to one of the most profitable companies in the computer business, Objective-C is really not marginal. It is very much alive. The compiler problems really are history. Also the convergence between Apple and GNU versions has made it a lot more portable. Phases might be seen as an issue because they will be outside the ken of thousands of new Objective-C programmers brought up on Cocoa/GNUStep.
Extensive surgery would be needed in Defobj, but it *could* be done to move to the new Apple runtime. The -fobjc-direct-dispatch could solve some performance problems. I think something extra would need to be done to keep the CPU branch predictor working well, though. Maybe Apple is thinking about that, I have no idea.

What are the benefits we seek with keeping Objective C alive? Is it mainly a port of Swarm that works really well on MacOS X, esp with XCode, together with a uniform working version for existing users? (I don't mean to denigrate that goal, but others might be more interested in dynamic dispatch features or something.)

As I understand it, C++ wasn't used for the prototypes of Swarm because it was considered incomplete and hard to learn. However, there does now exist Objective C++. In principle performance sensitive parts of models could be rewritten in C++ style and Swarm and dynamic parts would remain using Objective C message dispatch and objects. Probably sounds pretty Frankenstein, but I think it is pretty straightforward in terms of layering the Objective C compiler and runtime on the GCC C++ parts instead of on the C parts. A person wouldn't necessarily have to use C++ or even realize the change of compiler even occurred.


reply via email to

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