GoldSim is a general purpose simulation framework, in that it is not specialized to a particular type of problem. Rather, it is a "tool kit" for simulating a wide variety of systems. Such frameworks can be thought of as high-level programming languages that allow the user to simulate many different kinds of systems in a flexible way. Three of the most common types of general purpose simulation frameworks are: spreadsheets, system dynamics programs, and discrete event simulators. How is GoldSim different from these approaches?
Spreadsheets are by far the most broadly used general purpose simulator. One advantage of these programs compared with other types of simulation software is that most people are already somewhat familiar with spreadsheet programs. As a result, they are very widely used for simple simulation projects (particularly in the business world).
Although spreadsheets are well-suited for rapidly manipulating and collating large amounts of data and calculations, due to their structure they have some critical limitations with regard to carrying out complex, dynamic simulations (e.g., representing complex dynamic processes is difficult, they cannot display the model structure graphically).
System dynamics software (such as Stella, iThink, Vensim, and Powersim) is based on the standard stock and flow approach developed by Professor Jay W. Forrester at MIT in the late 1950s and early 1960s. Models based on system dynamics are built using three principal element types (stocks, flows, and converters), and put emphasis on understanding the feedback structure of systems. System dynamics software packages are typically used for simulating business and organizational systems and simple engineering and scientific systems.
Although GoldSim is similar to system dynamics programs in many ways (and can simulate any kind of system that these tools can), GoldSim greatly extends the relatively restrictive stock and flow syntax in order to more realistically model complex systems.
Discrete event simulators (such as ProModel, Arena, ExtendSim, and Witness) generally rely on a transaction-flow approach to modeling systems. Models consist of entities (units of traffic with specific attributes), resources (elements that service entities), and control elements (elements that determine the states of the entities and resources). Discrete simulators are generally used for simulating systems such as call centers, factory operations, and shipping facilities.
Although GoldSim has powerful discrete event simulation capabilities, it was designed primarily to model systems exhibiting both continuous and discrete dynamics (in which the discrete events are used to represent things like failures, accidents and financial transactions). GoldSim was not designed to represent systems with many thousands of entities with a large number of different attributes being processed in various ways (such as assembly lines and call centers). In most cases, these types of systems would be better represented by using the transaction-flow approach of a discrete event simulator (rather than GoldSim).