This article needs additional citations for verification. (February 2013) |
Paradigm | multi-paradigm: object-oriented, procedural |
---|---|
Designed by | Barbara Liskov and her students |
Developer | Massachusetts Institute of Technology |
First appeared | 1975 |
Stable release | |
Typing discipline | strong |
Website | pmg |
Major implementations | |
PDP-10 CLU,[3] Native CLU,[1] Portable CLU,[2] clu2c[4] | |
Influenced by | |
ALGOL 60, Lisp, Simula, Alphard | |
Influenced | |
Ada, Argus, C++,[5] Lua, Python,[6] Ruby, Sather, Swift[7] |
CLU is a programming language created at the Massachusetts Institute of Technology (MIT) by Barbara Liskov and her students starting in 1973.[8] While it did not find extensive use, it introduced many features that are used widely now, and is seen as a step in the development of object-oriented programming (OOP).
Key contributions include abstract data types,[9] call-by-sharing, iterators, multiple return values (a form of parallel assignment), type-safe parameterized types, and type-safe variant types. It is also notable for its use of classes with constructors and methods, but without inheritance.
replace "CLU" with "Python", "record" with "instance", and "procedure" with "function or method", and you get a pretty accurate description of Python's object model.
The Swift language is the product of tireless effort from a team of language experts, documentation gurus, compiler optimization ninjas, and an incredibly important internal dogfooding group who provided feedback to help refine and battle-test ideas. Of course, it also greatly benefited from the experiences hard-won by many other languages in the field, drawing ideas from Objective-C, Rust, Haskell, Ruby, Python, C#, CLU, and far too many others to list.