C++
Multi-paradigm, generic, object-oriented. First appeared 1985; c family; systems, games, high-performance.
Record¶
| First appeared | 1985 |
|---|---|
| Family | C family |
| Paradigm emphasis | Multi-paradigm, generic, object-oriented |
| Typing | Static, partly weak |
| Memory | Manual with RAII |
| Execution | AOT compiled |
| Primary domain | Systems, games, high-performance |
| Designers | Bjarne Stroustrup |
| Reference | https://isocpp.org/std/the-standard |
| Last verified | not yet checked against its source by a human |
Dates are first public release or publication, not the start of internal development. Colour on the typing and memory tags encodes kind, never rank.
Influence¶
Within the C family¶
Curly-brace syntax and an imperative core, descending from ALGOL through C. The tradition most later languages either extend or explicitly react against.
| Language | First appeared | Typing | Memory | Execution |
|---|---|---|---|---|
| COBOL | 1959 | Static, weak | Static allocation | AOT compiled |
| ALGOL 60 | 1960 | Static | Stack-based | AOT compiled |
| Simula 67 | 1967 | Static | Tracing GC | AOT compiled |
| Pascal | 1970 | Static, strong | Manual | AOT compiled |
| C | 1972 | Static, weak | Manual | AOT compiled |
| Objective-C | 1984 | Static core with dynamic dispatch | Manual then ARC | AOT compiled |
| Go | 2009 | Static, strong | Concurrent tracing GC | AOT compiled |
| Dart | 2011 | Static, strong, sound null safety | Generational tracing GC | JIT for development, AOT compiled for release |
8 other languages in this family, ordered by first appearance. C++ itself is omitted. Source: languages.json.