I would much prefer to work with declarative models, for many of the
reasons Scott and others have mentioned -- I think the ease of use for
beginners and participants in some modeling process is particularly important.
- Folks building some of the non-declarative tools seem oddly reluctant to
work toward even the beginnings of a declarative standard.
For example, at Agent 2003 when MASON from (GMU) was presented, someone in
the audience said they looked forward to seeing a new toolkit being
presented which didn't have its own implementation of heatbugs, but instead
read in a declarative description of that model and ran it.
This seemed to me a great point, but the general feeling seemed to be that
the discipline was still too immature for that kind of thing.
- Is it unavoidable in a declarative modeling language that certain
primitives must be assumed, which are themselves restrictive?
This is an open question... I have no idea.
The assumption seems to be that if (say) Repast were to support a
declarative language, then certain standard types (Agents, Locations,
Space) would have to be defined with lists of stereotyped behaviors (Move,
Die, Be_Born etc.) configurable via parameters.
Any such set of primitives would define an ontology for those using that
language which would effectively restrict its use to only particular types
of simulation/modeling exercise.
Or am I way off here?
Geography and the GeoVISTA Center,
Penn State University,
University Park, PA 16802, USA.