swarm-support
[Top][All Lists]
Advanced

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

Integrating Swarm and Cocoa on MacOS X


From: W . Northcott
Subject: Integrating Swarm and Cocoa on MacOS X
Date: Wed, 25 Sep 2002 12:15:48 +1000

First I changed the title of this thread to try and more accurate reflect 
where the dicussion had gone.

Secondly, I felt my discussion with Phil was fragmenting into a mixture of 
detail and programming philosophy that was not going anywhere.

So I will try set out simply what I understand Phil and others have been 
writing.  Of course given my general ignorance of programming, I may have 
got this all wrong.  This is of the nature of 'thinking out loud.'

1.  We have a problem because Swarm is based on a modified version of the 
GNU runtime, whereas MacOS X and Cocoa are based on the Apple runtime that 
uses completely different functions.  These two runtimes need different 
compiler flags and linking against different runtime libraries.  So 
although they use the same language (Objective-C) one cannot write a Swarm 
based App (a model) and link it against classes in Cocoa, or vice versa.

2.  It would be way cool to develop and debug Swarm models in MacOS X 
Project Builder and be able to take advantage of AppKit and all the other 
good stuff on MacOS X.  This has the potential to be the easiest Swarm 
environment for users to build and the most productive to use.

3.  Scott Christley suggested that the way to do this was develop a 
library of C functions which could pass messages between objects on the 
two runtimes to enable direct and tight integration.

4.  Phil is not happy about this because it is low level hacking when we 
should do this the OO way.  He observes that the Apple foundation classes 
already included a mechanism for messaging and receiving responses from 
'remote' objects.  (Objects on another computer, or another app on the 
same computer.)  The classes include NSConnection, NSInvocation etc. - see 
 Apple's distributed object documentation at:
http://developer.apple.com/techpubs/macosx/Cocoa/TasksAndConcepts/ProgrammingTopics/DistrObjects/index.html#//apple_ref/doc/uid/10000102i
(Phil - Have I got this right?)

5. There is a related but seperate issue as to whether Swarm should be 
restructured on the GNUstep base rather than  being founded on a modified 
GNU runtime.  The current situation means SDG has to write and maintain 
all its own foundation class libraries.  This is a difficult task with the 
current resources, and means a lot of time is wasted reinventing the same 
wheels.  As Phil points out this is a negation of the OO philosophy. 
Indeed there is the prospect that if the Apple compatible GNUstep classes 
are used, then exactly the same source code could compile on MacOS X as on 
GNUstep platforms using the local runtimes.  This would make problem 1 and 
others like it disappear, while making 2 trivial.

I have some difficulty commenting on the GNUstep bit because 
www.gnustep.org seems to have gone AWOL.

I am now well hidden behind the parapet.  So please fire back.

Bill Northcott

PS.  This has nothing to do with the first priority for MacOS X/Darwin 
which must be to get the Swarm libraries to work with XFree86 completely 
disintegrated from any Apple stuff above the BSD layer. 


                  ==================================
   Swarm-Support is for discussion of the technical details of the day
   to day usage of Swarm.  For list administration needs (esp.
   [un]subscribing), please send a message to <address@hidden>
   with "help" in the body of the message.



reply via email to

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