The Free On-line Dictionary of Computing (30 December 2018):
An extension to ALGOL 60 for the Univac 1107 designed in
1962 by Kristen Nygaard and Ole-Johan Dahl and implemented in
1964. SIMULA I was designed for discrete simulation. It
introduced the recordclass, leading the way to data
abstraction and object-oriented programming languages like
Smalltalk. It also featured coroutines.
SIMULA's philosophy was the result of addressing the problems
of describing complex systems for the purpose of simulating
them. This philosophy proved to be applicable for describing
complex systems generally (not just for simulation) and so
SIMULA is a general-purpose object-oriented application
programming language which also has very good discrete event
simulation capability. Virtually all OOP products are derived
in some manner from SIMULA.
For a description of the evolution of SIMULA and therefore the
fundamental concepts of OOP, see Dahl and Nygaard in ["History
of Programming Languages". Ed. R. W. Wexelblat.