Simula

[2] Simula 67 introduced objects,[1]: 2, 5.3  classes,[1]: 1.3.3, 2  inheritance and subclasses,[1]: 2.2.1  virtual procedures,[1]: 2.2.3  coroutines,[1]: 9.2  and discrete event simulation,[1]: 14.2  and featured garbage collection.

SIMULA I was born, a special purpose programming language for simulating discrete event systems.

At that visit, Nygaard presented the ideas of Simula to Robert Bemer, the director of systems programming at Univac.

He invited Nygaard, who presented the paper "SIMULA – An Extension of ALGOL to the Description of Discrete-Event Networks".

Dahl and Nygaard presented their paper on Class and Subclass declarations at the IFIP Working Conference on simulation languages in Oslo, May 1967.

The TOPS-10 implemented the concept of public, protected, and private member variables and procedures, that later was integrated into Simula Standard in 1986.

There are mainly four implementations: In November 2001, Dahl and Nygaard were awarded the IEEE John von Neumann Medal by the Institute of Electrical and Electronics Engineers "For the introduction of the concepts underlying object-oriented programming through the design and implementation of SIMULA 67".

Dahl and Nygaard died in June and August of that year, respectively,[10] before the ACM Turing Award Lecture[11] that was scheduled to be delivered at the November 2002 OOPSLA conference in Seattle.

Pages from the DECsystem-10 SIMULA Language Handbook, as published by the Swedish National Defence Research Institute