Paradigms | Multi-paradigm: procedural, imperative, structured, object-oriented |
---|---|
Family | ALGOL |
Designed by | Ole-Johan Dahl |
Developer | Kristen Nygaard |
First appeared | 1962 |
Stable release | Simula 67, Simula I
|
Typing discipline | Static, nominative |
Scope | Lexical |
Implementation language | ALGOL 60 (primarily; some components Simscript) |
OS | Unix-like, Windows, z/OS, TOPS-10, MVS |
Website | www |
Influenced by | |
ALGOL 60, Simscript | |
Influenced | |
BETA, CLU, Eiffel, Emerald, Pascal, Smalltalk, C++, and many other object-oriented programming languages |
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]
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]
{{cite report}}
: CS1 maint: unfit URL (link)
The development of .. SIMULA I and SIMULA 67... were influenced by the design of SIMSCRIPT ...