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