Overview of the Swarm Distribution
Swarm is currently in beta test release. Installation directions can
be found in install.html. Documentation is
incomplete: learning to program with Swarm will require reading
example applications and looking at the header files in libraries. All
existing documentation is indexed in index.html.
Libraries
The main part of Swarm is a set of libraries, one per source
directory. Briefly, the directory organization is as follows:
lib, include, bin
Installed libraries, include files, and helper binaries.
src
Swarm library sources.
- defobj
- Enhancements to Objective C runtime to support our model
of object oriented programming
- collections
- Collection library
- activity
- Schedule execution mechanism
- random
- Random number library
- tkobjc
- Graphical Interface library
- swarmobject
- Base class for simulated objects
- simtools
- Collected bits of code necessary for running Swarm
- space
- 2d spatial environment libary
Applications
In addition, there is a set of sample Swarm applications that are
distributed separately. Applications are the best current
roadmap
for the Swarm code: much of what is possible with Swarm is
demonstrated in the sample applications.
The most important applications are:
- template
- Template simulation. The code itself here is trivial, but
provides a nice base for new Swarm programmers to start
from.
- heatbugs
- Heatbugs, a simple complex system. The code here is
thoroughly commented for use as a guide to swarm programming.
Credits
The Swarm developers are Nelson Minar <nelson@santafe.edu>,
Roger Burkhart <roger@ci.deere.com>, and Manor Askenazi
<manor@santafe.edu>, under the direction of Chris Langton
<cgl@santafe.edu>. David Hiebeler wrote the first prototype of
Swarm. The Swarm developers can be reached collectively as
<swarm@santafe.edu>. More information is available on our Web
page, http://www.santafe.edu/projects/swarm/.
Nelson Minar <nelson@santafe.edu>
Last modified: Sun May 12 14:39:39 MDT 1996