cover image

Simula is the name of two simulation programming languages, Simula I and Simula 67, developed in the 1960s at the Norwegian Computing Center in Oslo, by Ole-Johan Dahl and Kristen Nygaard. Syntactically, it is an approximate superset of ALGOL 60,[1]:1.3.1 and was also influenced by the design of Simscript.[2]

Quick facts: Paradigms, Family, Designed by, Develope...
ParadigmsMulti-paradigm: procedural, imperative, structured, object-oriented
Designed byOle-Johan Dahl
DeveloperKristen Nygaard
First appeared1962; 60 years ago (1962)
Stable release
Simula 67, Simula I
Typing disciplineStatic, nominative
Implementation languageALGOL 60 (primarily; some components Simscript)
OSUnix-like, Windows, z/OS, TOPS-10, MVS
Influenced by
ALGOL 60, Simscript
All subsequent object-oriented programming languages

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.[1]:9.1 Other forms of subtyping (besides inheriting subclasses) were introduced in Simula derivatives.[citation needed]

Simula is considered the first object-oriented programming language. As its name suggests, the first Simula version by 1962 was designed for doing simulations; Simula 67 though was designed to be a general-purpose programming language[3] and provided the framework for many of the features of object-oriented languages today.

Simula has been used in a wide range of applications such as simulating very-large-scale integration (VLSI) designs, process modeling, communication protocols, algorithms, and other applications such as typesetting, computer graphics, and education. The influence of Simula is often understated, and Simula-type objects are reimplemented in C++, Object Pascal, Java, C#, and many other languages. Computer scientists such as Bjarne Stroustrup, creator of C++, and James Gosling, creator of Java, have acknowledged Simula as a major influence.[4]

Oops something went wrong: