SIMULA I
SIMULA I
(language)An extension to ALGOL 60 for the Univac 1107 designed in1962 by Kristen Nygaard and Ole-Johan Dahl and implemented in1964. SIMULA I was designed for discrete simulation. Itintroduced the record class, leading the way to data abstraction and object-oriented programming languages likeSmalltalk. It also featured coroutines.
SIMULA's philosophy was the result of addressing the problemsof describing complex systems for the purpose of simulatingthem. This philosophy proved to be applicable for describingcomplex systems generally (not just for simulation) and soSIMULA is a general-purpose object-oriented applicationprogramming language which also has very good discrete eventsimulation capability. Virtually all OOP products are derivedin some manner from SIMULA.
For a description of the evolution of SIMULA and therefore thefundamental concepts of OOP, see Dahl and Nygaard in ["Historyof Programming Languages". Ed. R. W. Wexelblat.Addison-Wesley, 1981].