Since high level programming languages (HLPLs) are undoubtedly becoming the most widely used programming tools, it is natural for computer designers to give more attention to the architectural requirements of HLPLs. Software factors that affect the performance of the machine are the programming languages used and their structures, interaction with the hardware, the use pattern of their features and execution time behaviour of programs written in these languages.
The dissertation studies the architectural requirements of SIMULA 67. A basic machine for SIMULA 67 is designed and used as a defining tool with respect to which it is informally verified any implementation model correct and more optimal.
A comparative analysis of published dynamic and static statistics for several other languages is used to uncover the correspondance between the two types of measurements.
Step by step design improvements are performed using the following design methodology itratively for each language feature and machine construct: (1) Present weaknesses and shortcomings are identified. (2) Important design parameters are identified. (3) Difficulties, if any, of direct measurements of these parameters are recognized. (4) Suggestions for alternate set of parameters to be measured are put forward, and relation to previous parameters is explained. Justification for choosing the alternate parameters are made. (5) The required statistics are defined, and the actual measurements are performed. (6) Parameter values are estimated from the obtained statistics. (7) Design decisions are made based on the estimated design parameter values, and justification for any suggested design improvements are made.
A multi-dimensional virtual memory (MDM) for a SIMULA 67 machine is designed based on SIMULA 67's constructs which define levels of control over memory allocation, deallocation and garbage collection. Using our statistics the effectiveness of our proposed MDM in memory management is analyzed. Our analysis indicate that our proposed four-dimensional memory is ineffective as a tool for memory management for SIMULA 67. A new linear memory organization and suitable garbage collection schemes are proposed.
Finally, a new highly optimized SIMULA 67 machine incorporating all the suggested improvements is designed.
Recommendations
Extensibility in Simula 67
Proceedings of the international symposium on Extensible languagesSimula 67 is a general purpose language developed at the Norwegian Computing Center. It evolved from an earlier simultation language called Simula 1 [1]
Dahl and Nygaard however, realized that the problems that had to be solved for the implementation of ...
Some features of the SIMULA 67 language
Proceedings of the second conference on Applications of simulationsSIMULA 67 is a general purpose programming language with a built-in simulation capability similar to, but stronger than that of SIMULA I. SIMULA 67 has been developed by the authors at the Norwegian Computing Center. Compilers for this language are now ...
Extensibility in Simula 67
Proceedings of the international symposium on Extensible languagesSimula 67 is a general purpose language developed at the Norwegian Computing Center. It evolved from an earlier simultation language called Simula 1 [1]
Dahl and Nygaard however, realized that the problems that had to be solved for the implementation of ...