DYNAMO (programming language)


DYNAMO is a historically important simulation language and accompanying graphical notation developed within the system dynamics analytical framework. It was originally for industrial dynamics but was soon extended to other applications, including population and resource studies
and urban planning.
DYNAMO was initially developed under the direction of Jay Wright Forrester in the late 1950s, by Dr. Phyllis Fox,
Alexander L. Pugh III, Grace Duren,
and others
at the M.I.T. Computation Center.
DYNAMO was used for the system dynamics simulations of global resource-depletion reported in the Club of Rome's Limits to Growth, but has since fallen into disuse.

Beginnings

In 1958, Forrester unwittingly instigated DYNAMO's development when he asked an MIT staff programmer to compute needed solutions to some equations, for a Harvard Business Review paper he was writing about industrial dynamics.
The programmer, Richard Bennett, chose to implement a system that took coded equations as symbolic input and computed solutions. SIMPLE became the proof-of-concept for DYNAMO: rather than have a specialist programmer "hard-code" a special-purpose solver in a general purpose programming language, users could specify a system's equations in a special simulation language and get simulation output from one program execution.

Design goals

DYNAMO was designed to emphasize the following:
Among the ways in which DYNAMO was above the standard of the time, it featured units checking of numerical types and relatively clear error messages.

Implementation

The earliest versions were written in assembly language for the IBM 704, then for the IBM 709 and IBM 7090. DYNAMO II was written in AED-0, an extended version of Algol 60.
Dynamo II/F, in 1971, generated portable FORTRAN code
and both Dynamo II/F and Dynamo III improved the system's portability by being written in FORTRAN.
Originally designed for batch processing on mainframe computers, it was made available on minicomputers in the late 1970s,
and became available as "micro-Dynamo" on personal computers in the early 1980s.
The language went through several revisions from DYNAMO II up to DYNAMO IV in 1983,

Impact and issues

Apart from its public impact in environmental issues raised by the controversy over Limits to Growth, DYNAMO was influential in the history of discrete-event simulation even though it was essentially a package for continuous simulation specified through difference equations. It has been said by some to have opened opportunities for computer modelling even for users of relatively low mathematical sophistication. On the other hand, it has also been criticized as weak precisely where mathematical sophistication should be required and for relying only on Euler integration.