Critique of SIMAN as a programming language (abstract only)

This paper examines the simulation language SIMAN, describes its capabilities and critiques it as a programming language.SIMAN is one of the latest of the fourth generation general purpose simulation languages. It's design was oriented toward the simulation of production and manufacturing systems. We discuss the structural organization of the language including its control, data, name and syntactic structures.The basic program in SIMAN consists of a simulation model and a simulation experiment which are compiled separately and then linked. This is the correct format for a simulation language but in some cases there is not enough power in the experimental frame to appropriately control the simulation model. In other cases, the strong checking of parameter sets in the experimental frame make expansion of the model very difficult.There are some problems about syntactic consistency and regularity. There is a BLOCKS program available for the PC version of SIMAN that greatly eases the creation of the MODEL part of the SIMAN simulation. This program is not available for the mainframe version of SIMAN and the resulting confusion about comma, semicolon, and colon delimiters causes frustrating little bugs.We also discuss many of the strengths of the language both in terms of simulation and in terms of language design principles. Examples used to illustrate the power and weaknesses of the language will include simulation of several computer systems that utilize various priority scheduling schemes for input jobs. We examine CPU utilization, various statistics on the delays by type of job and maximum delays. The computer systems will be modeled with various assumptions on the CPU speed, the distribution of the job classes, the required time of each job class and we allow for CPU preemption by higher priority jobs. A strength of the language is that once the basic model has been generated all of the above simulations can be done by trivial modifications in the experiment file. In fact, the model need not be recompiled. As a very simple example of SIMAN's power we will model the queuing problems for a terminal room where some of the terminals may be designated as express only.Another example will examine the delay characteristic for an entry control facility where the decision variables are the number of entry booths that must be constructed. We also must determine if the entry testing procedure is sufficiently quick and accurate to accommodate the present arrival patterns of the employees given the physical constraints that put an absolute upper bound on the number of booths.The major strength of the SIMAN simulation language is for simulation of manufacturing systems. We present another example to show how easily complex manufacturing shops can be simulated. This example will also show some of the deficiencies in data entry and manipulation for the language.SIMAN also does continuous simulation and we present a epidemic simulation demonstrating this capability. SIMAN, in general, is a good differential equation solver that also provides adequate graphical output for the presentation of the simulation results.Finally, we will also discuss some experiences we have had using SIMAN as part of a faculty computer literacy program. Some participants with almost no computer experience were able to develop moderately sophisticated models in their area of expertise that were very useful to them in research or teaching.