swarm-hackers
[Top][All Lists]
Advanced

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

Re: [swarm-hackers] Re: Host platform dependence (was Naming conventions


From: Scott Christley
Subject: Re: [swarm-hackers] Re: Host platform dependence (was Naming conventions)
Date: Wed, 18 Nov 2009 23:15:05 -0800


On Nov 18, 2009, at 10:48 PM, Bill Northcott wrote:

On 19/11/2009, at 5:13 PM, Scott Christley wrote:
Yeah, it's true, the 'model' word is bad, right behind it is 'system' and 'paradigm' and many others.

No argument there. I tried to qualify paradigm with UI to make it clearer.

Anyways, I'm using the word model in the same context you are. The integration piece I'm talking about is the ObserverSwarm. This is part of the Swarm design and defines how the simulation of the model is observed. The observation could be a GUI but its also possible to be non-GUI like saving data into a file.

No it's not typically part of the modeller's model, but it is part of the Swarm Library. The distinction is well defined. The interface is not. According to the Swarm design, the ObserverSwarm object is also a Swarm object.

But let me put my "Glen Ropella" hat on for moment, some modeller actually may consider the act of observation to be part of the model. No its not common, but its valid.

I really can't go with that. I don't get this as quantum physics. IMHO the MVC paradigm is seriously useful, which is part of why Rails is so sweet. Violating it by mixing the M and the V leads down a path beset by dragons. It may be valid, but it is very perilous.

I understand your point, though you are confounding programming concepts with modeling concepts. The notion of "observation" can still be part of a model, that is valid. Actually I think its in many models but not made explicit. For example in Heatbugs, each of the bugs observes its environment and makes decision about how to move.

Swarm is designed with MVC, Cocoa is designed with MVC. I'm not saying the V in MVC is part of the model. But the same Swarm classes that are used by V to run a GUI display for a user, could just as well be used by agents within the model to observe themselves and their environment.

Anyways, I'm being pedantic and this sounds more like philosophic banter.

Your initial point was that the model in Heatbugs should not be using Cocoa classes. It does not. In fact the model classes for the OpenStep version of Heatbugs are practically identical and unchanged, what is different is the Observer class or the V in MVC.

This is true with one minor caveat. Heatbugs know how to draw themselves, thus they contain GUI code within them to do this, the GUI code to do this for tcl/tk/blt is different from the code for OpenStep.

Scott





reply via email to

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