Douglas Roberts wrote:

> Why use OO methodologies to implement an application that is 
> inherently object-based
I think that the term `OO methodologies', at least in its popular usage 
(e.g. C++, Java), is an inadequate foundation for the diversity of 
ABMs.   Specifically, constraints like classes that have fixed layouts, 
fixed sets of methods, no practical way to mutate method 
implementations, etc.
There are clearly large classes of models where the OOP features of C++ 
and Java are just fine, and they are the right tool for the job. 

But it seems to me that because the actual work that goes into making a 
industrial strength compiler is so much bigger than the work that goes 
into an ABM (by orders of magnitude), that ABMs have tended to become 
restricted by what popular OOP tools can do.
> You could write an ABM in any language, including assembly, but why in 
> the world would you want to do that?
Some reasons:

1) because the use of OO methodologies used in many ABMs are often very 
basic and require very little software support, e.g. just containers and 
messaging

2) simple code is easier to explain to non-programmers

3) simple things can be optimized effectively, and computer performance 
is often a rate limiting factor in ABM


============================================================
FRIAM Applied Complexity Group listserv
Meets Fridays 9a-11:30 at cafe at St. John's College
lectures, archives, unsubscribe, maps at http://www.friam.org

Reply via email to