Share This
Object-oriented programming
Object-oriented programming (OOP) is a programming paradigm that uses "objects" – data structures consisting of datafields and methods together with their interactions – to design applications and computer programs. Programming techniques may include features such as information hiding, data...
Learn more about Object-oriented programming »
Add More Topics
Save this view to a base, or just for yourself.
about 200 Programming Language topics matching:
Filter this CollectionPerl
Perl is a high-level, general-purpose, interpreted, dynamic programming language. Perl was originally developed by Larry Wall, a linguist working as a systems administrator for NASA, in 1987, as a general-purpose Unix scripting language to make...
Language Designers:
Language Paradigms:
- Procedural programming ,
- Object-oriented programming ,
- Dynamic programming language ,
- Multi-paradigm programming language
Introduced:
- 1987
C#
C# (pronounced "C Sharp") is a multi-paradigm programming language encompassing imperative, functional, generic, object-oriented (class-based), and component-oriented programming disciplines. It was developed by Microsoft within the .NET initiative...
Language Paradigms:
- Component-oriented programming ,
- Imperative programming ,
- Object-oriented programming ,
- Structured programming
Introduced:
- 2001
Objective-C
Objective-C is a reflective, object-oriented programming language, which adds Smalltalk-style messaging to the C programming language.
Today it is used primarily on Apple's Mac OS X and iPhone OS: two environments based on, although not compliant...
Parent Language:
Developers:
Language Paradigms:
Introduced:
- 1986
C++
C++ (pronounced "See plus plus") is a statically typed, free-form, multi-paradigm, compiled, general-purpose programming language. It is regarded as a middle-level language, as it comprises a combination of both high-level and low-level language...
Language Designers:
Parent Language:
Language Paradigms:
- Object-oriented programming ,
- Generic programming ,
- Multi-paradigm programming language ,
- Procedural programming
Introduced:
- 1983
Smalltalk
Smalltalk is an object-oriented, dynamically typed, reflective programming language. Smalltalk was created as the language to underpin the "new world" of computing exemplified by "human–computer symbiosis." It was designed and created in part for...
Language Designers:
Language Paradigms:
Simula
Simula is a name for two 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 a fairly faithful superset of Algol 60.
Simula 67...
Language Paradigms:
Influenced By:
Introduced:
- 1967
Blitz BASIC
Blitz BASIC is a commercial compiler for the BASIC programming language. Originally developed on the Amiga, Blitz BASIC compilers are now available on several platforms. The Blitz products are mainly designed for programming games but also feature...
Introduced:
- 2004
Common Lisp
Common Lisp, commonly abbreviated CL, is a dialect of the Lisp programming language, published in ANSI standard document ANSI INCITS 226-1994 (R2004), (formerly X3.226-1994 (R1999)). Developed to standardize the divergent variants of Lisp (though...
Language Designers:
View entire collection »Parent Language:
COBOL
COBOL (pronounced /ˈkoʊbɒl/) is one of the oldest programming languages. Its name is an acronym for COmmon Business-Oriented Language, defining its primary domain in business, finance, and administrative systems for companies and governments.
The...
Introduced:
- 1959
CLU
CLU is a programming language created at MIT by Barbara Liskov and her students between 1974 and 1975. It was notable for its use of constructors for abstract data types that included the code that operated on them, a key step in the direction of...
Language Designers:
Language Paradigms:
View entire collection »Introduced:
- 1974
Dylan
The Dylan programming language is a multi-paradigm language that includes support for functional and object-oriented programming, and is dynamic and reflective while providing a programming model designed to support efficient machine code generation...
Language Designers:
Developers:
Eiffel
Eiffel is an ISO-standardized, object-oriented programming language designed to enable programmers to efficiently develop extensible, reusable, reliable software. Eiffel is used in academia as a language for teaching computer-programming principles....
Language Designers:
Introduced:
- 1986
JavaScript
JavaScript is an object-oriented scripting language used to enable programmatic access to objects within both the client application and other applications. It is primarily used in the form of client-side JavaScript, implemented as an integrated...
Language Designers:
Parent Language:
Language Paradigms:
View entire collection »Introduced:
- 1995
Fortran
Fortran (previously FORTRAN) is a general-purpose, procedural, imperative programming language that is especially suited to numeric computation and scientific computing. Originally developed by IBM in the 1950s for scientific and engineering...
Developers:
Language Paradigms:
View entire collection »Influenced By:
Introduced:
- Apr 1957
Java
Java refers to a number of computer software products and specifications from Sun Microsystems that together provide a system for developing application software and deploying it in a cross-platform environment. Java is used in a wide variety of...
Language Designers:
Language Paradigms:
- Virtual machine ,
- Strongly-typed programming language ,
- Object-oriented programming ,
- Structured programming
Introduced:
- 1995
Lisp
Lisp (or LISP) is a family of computer programming languages with a long history and a distinctive, fully parenthesized syntax. Originally specified in 1958, Lisp is the second-oldest high-level programming language in widespread use today; only...
Language Designers:
Parent Language:
Language Paradigms:
View entire collection »Introduced:
- 1958
MOO programming language
The MOO programming language is a relatively simple programming language used to support the MOO Server. It is dynamically typed and uses a prototype based object oriented system, with syntax roughly derived from the Algol school of programming...
Influenced:
Language Paradigms:
- Structured programming ,
- Prototype-based programming ,
- Multi-paradigm programming language ,
- Object-oriented programming
Introduced:
- 1990
Oberon
Oberon is a programming language created in 1986 by Professor Niklaus Wirth (creator of the Pascal, Modula, and Modula-2 programming languages) and his associates at ETH Zurich in Switzerland. It was developed as part of the implementation of the...
Language Designers:
Introduced:
- 1986
Python
Python is a general-purpose high-level programming language. Its design philosophy emphasizes code readability. Python claims to "[combine] remarkable power with very clear syntax", and its standard library is large and comprehensive. Its use of...
Language Designers:
Parent Language:
Developers:
Language Paradigms:
View entire collection »Introduced:
- 1991
PHP
PHP, or PHP: Hypertext Preprocessor, is a widely used, general-purpose scripting language that was originally designed for web development, to produce dynamic web pages. It can be embedded into HTML and generally runs on a web server, which needs to...
Introduced:
- 1995
Ruby
Ruby is a dynamic, reflective, general purpose object-oriented programming language that combines syntax inspired by Perl with Smalltalk-like features. Ruby originated in Japan during the mid-1990s and was initially developed and designed by...
Language Designers:
Developers:
Language Paradigms:
- Interpreted language ,
- Dynamic programming language ,
- Object-oriented programming ,
- Reflective programming
Introduced:
- 1995
REXX
REXX (REstructured eXtended eXecutor) is an interpreted programming language which was developed at IBM. It is a structured high-level programming language which was designed to be both easy to learn and easy to read. Both proprietary and open...
Developers:
Language Paradigms:
- Object-oriented programming ,
- Procedural programming ,
- Structured programming ,
- Multi-paradigm programming language
Introduced:
- 1979
Sather
Sather is an object-oriented programming language. It originated circa 1990 at the International Computer Science Institute at the University of California, Berkeley, developed by an international team led by Steve Omohundro. It supports garbage...
Influenced:
Introduced:
- 1990
SNOBOL
SNOBOL (String Oriented Symbolic Language) is a computer programming language developed between 1962 and 1967 at AT&T; Bell Laboratories by David J. Farber, Ralph E. Griswold and Ivan P. Polonsky. It was one of a number of text-string-oriented...
Language Paradigms:
- Functional programming ,
- Logic programming ,
- Object-oriented programming ,
- Multi-paradigm programming language
Influenced By:
Introduced:
- 1962
Tcl
Tcl (originally from "Tool Command Language", but conventionally rendered as "Tcl" rather than "TCL"; pronounced as "tickle" or "tee-cee-ell") is a scripting language created by John Ousterhout. Originally "born out of frustration"—according to the...
Language Paradigms:
- Functional programming ,
- Object-oriented programming ,
- Procedural programming ,
- Multi-paradigm programming language
Introduced:
- 1988
Turing programming language
Turing is a Pascal-like programming language developed in 1982 by Ric Holt and James Cordy, then of University of Toronto, Canada. Turing is a descendant of Euclid, Pascal and SP/k that features a clean syntax and precise machine-independent...
Language Paradigms:
View entire collection »Introduced:
- 1982
Squeak
The Squeak programming language is a Smalltalk implementation, derived directly from Smalltalk-80 by a group at Apple Computer that included some of the original Smalltalk-80 developers. Its development was continued by the same group at Walt Disney...
Language Designers:
Parent Language:
Language Paradigms:
Introduced:
- 1996
Turbo Pascal
Turbo Pascal is a software development system that includes a compiler and an Integrated Development Environment (IDE) for the Pascal programming language running under CP/M, CP/M-86, and MS-DOS, developed by Borland under Philippe Kahn's leadership...
Language Paradigms:
Objective Caml
Objective Caml, or OCaml (pronounced /oʊˈkæməl/ oh-KAM-əl) is the main implementation of the Caml programming language, created by Xavier Leroy, Jérôme Vouillon, Damien Doligez, Didier Rémy and others in 1996. OCaml is an open source project managed...
Language Designers:
View entire collection »Language Paradigms:
View entire collection »Curl programming language
Curl is a reflective object-oriented programming language designed for interactive web applications. It combines text markup (as in HTML), scripting (as in JavaScript), and heavy-duty computing (as in Java, C#, or C++) within one unified framework....
Language Paradigms:
View entire collection »Influenced By:
Introduced:
- 1998
Lua
In computing, Lua (pronounced /ˈluː.ə/, LOO-ə) is a lightweight, reflective, imperative and functional programming language, designed as a scripting language with extensible semantics as a primary goal. The name comes from the Portuguese word lua...
Language Designers:
View entire collection »Influenced:
View entire collection »Language Paradigms:
- Imperative programming ,
- Functional programming ,
- Multi-paradigm programming language ,
- Object-oriented programming
Introduced:
- 1993
Self
Self is an object-oriented programming language based on the concept of prototypes. It was used mainly as an experimental test system for language design in the 1980s and 1990s. In 2006, Self was still being developed as part of the Klein project,...
Language Designers:
Dialects:
Developers:
Language Paradigms:
View entire collection »Influenced By:
Introduced:
- 1986
J
The J programming language, developed in the early 1990s by Ken Iverson and Roger Hui, is a synthesis of APL (also by Iverson) and the FP and FL function-level languages created by John Backus.
To avoid repeating the APL special character problem, J...
Parent Language:
Influenced:
Language Paradigms:
View entire collection »Introduced:
- 1990
Pike programming language
Pike is an interpreted, general-purpose, high-level, cross-platform, dynamic programming language, with a syntax similar to that of C. Unlike many other dynamic languages, Pike is both statically and dynamically typed, and requires explicit type...
Language Paradigms:
- Functional programming ,
- Object-oriented programming ,
- Procedural programming ,
- Multi-paradigm programming language
Introduced:
- 1994
BETA
BETA is a pure object-oriented language originating within the "Scandinavian School" in object-orientation where the first object-oriented language Simula was developed. From a technical perspective, BETA provides several unique features. Classes...
Language Designers:
Language Paradigms:
Z++
Z++ (pronounced zed plus plus) was an object-oriented extension to the Z specification language.
Z++ is an object-oriented extension to the Z specification language, allowing for the definition of classes, and the relation of classes through...
Language Paradigms:
XLISP
XLISP is a family of Lisp implementations written by David Betz.
The first version was a Lisp with object-oriented extensions for computers with limited power. The second version (XLISP 2.0) moved toward Common Lisp, but was by no means a complete...
Language Paradigms:
Visual FoxPro
Visual FoxPro is a data-centric object-oriented and procedural programming language produced by Microsoft. It is derived from FoxPro (originally known as FoxBASE) which was developed by Fox Software beginning in 1984. Fox Technologies merged with...
Language Paradigms:
ECMAScript
ECMAScript is a scripting language, standardized by Ecma International in the ECMA-262 specification and ISO/IEC 16262. The language is widely used on the web, especially in the form of its three best-known dialects, JavaScript, ActionScript, and...
Parent Language:
Language Paradigms:
- Imperative programming ,
- Object-oriented programming ,
- Functional programming ,
- Prototype-based programming
Introduced:
- 1997
CLOS
The Common Lisp Object System (CLOS) is the facility for object-oriented programming which is part of ANSI Common Lisp. CLOS is a dynamic object system which differs radically from the OOP facilities found in more static languages such as C++ or...
Influenced:
Language Paradigms:
Visual Basic .NET
Visual Basic .NET (VB.NET) is an object-oriented computer programming language that can be viewed as an evolution of Microsoft's Visual Basic (VB) which is implemented on the Microsoft .NET Framework. Microsoft currently supply Visual Basic free of...
Language Designers:
Inform
Inform is a programming language and design system for interactive fiction originally created in 1993 by Graham Nelson. Inform can generate programs designed for the Z-code or Glulx virtual machines. Versions 1 through 5 were released between 1993...
Language Paradigms:
View entire collection »Introduced:
- 2006
F#
F# (pronounced F Sharp) is a multi-paradigm programming language, targeting the .NET Framework, that encompasses functional programming as well as imperative object-oriented programming disciplines. It is a variant of ML and is largely compatible...
Language Designers:
Language Paradigms:
- Functional programming ,
- Object-oriented programming ,
- Imperative programming ,
- Multi-paradigm programming language
Introduced:
- 2002
Modula-3
In Computer science, Modula-3 is a programming language conceived as a successor to an upgraded version of Modula-2. While it has been influential in research circles (influencing the designs of languages such as Java, C#, and Python) it has not...
Language Paradigms:
View entire collection »D
The D programming language, also known simply as D, is an object-oriented, imperative, multi-paradigm system programming language by Walter Bright of Digital Mars. It originated as a re-engineering of C++, but even though it is predominantly...
Language Designers:
Influenced:
Language Paradigms:
View entire collection »Introduced:
- 1999
Oz
Oz is a multiparadigm programming language, developed in the Programming Systems Lab at Université catholique de Louvain, for programming language education. It has a canonical textbook: Concepts, Techniques, and Models of Computer Programming.
Oz...
Language Paradigms:
- Multi-paradigm programming language ,
- Functional programming ,
- Logic programming ,
- Object-oriented programming
Influenced By:
Introduced:
- 1991
ABAP
ABAP (Advanced Business Application Programming, originally Allgemeiner Berichts-Aufbereitungs-Prozessor, German for "general report creation processor") is a very high level programming language created by the German software company SAP. It is...
Language Paradigms:
View entire collection »Q programming language
Q stands for equational programming language. It is an interpreted, interactive functional programming language created by Albert Gräf at the University of Mainz in Germany. Q programs are just collections of equations which are used to evaluate...
Language Designers:
Language Paradigms:
View entire collection »Influenced By:
Io
Io is a pure object-oriented programming language inspired by Smalltalk, Self, Lua, Lisp, Act1, and NewtonScript. Io has a prototype-based object model similar to the ones in Self and NewtonScript, eliminating the distinction between instance and...
Language Designers:
Language Paradigms:
View entire collection »Introduced:
- 2002
Lexico
Lexico is a Spanish language object-oriented educational programming language based on the .NET Framework.
Created to facilitate the programming education, specifically object-oriented programming techniques, Lexico has been shown to be successful...
Language Paradigms:
Borland Delphi
Embarcadero Delphi, formerly CodeGear Delphi and Borland Delphi, is a software development environment for Microsoft Windows applications originally developed by Borland and now owned and developed by Embarcadero Technologies. The Delphi programming...
Parent Language:
Language Paradigms:
J#
The J# (pronounced 'jay-sharp') programming language is a transitional language for programmers of Sun's Java and Microsoft's Visual J++ languages, so they may use their existing knowledge and applications on Microsoft's .NET platform. J# can work...
Language Designers:
Language Paradigms:
Introduced:
- 2002
A++
A++ stands for abstraction plus reference plus synthesis which is used as a name for the minimalistic programming language that is built on ARS.
ARS is an abstraction from the Lambda Calculus, taking its three basic operations, and giving them a...
Language Paradigms:
View entire collection »Influenced By:
Introduced:
- 2002
S2 programming language
S2 (Style System 2) is an object-oriented programming language developed in the late 1990s by Brad Fitzpatrick, Martin "Mart" Atkins, and others for the online journalling service LiveJournal in order to allow users full control over the appearance...
Language Paradigms:
Oberon-2
Oberon-2 is an extension of the original Oberon programming language that adds limited reflection and object-oriented programming facilities, open arrays as pointer base types, read-only field export and reintroduces the FOR loop from Modula-2.
It...
Language Designers:
Influenced:
Language Paradigms:
View entire collection »Introduced:
- 1991
Nemerle
Nemerle is a high-level statically typed programming language for the .NET (see also Mono) platform. It offers functional, object-oriented and imperative features. It has a simple C#-like syntax and a powerful metaprogramming system.
It has been...
Joule
Joule is a concurrent dataflow programming language, designed for building distributed applications. It is so concurrent, that the order of statements within a block is irrelevant to the operation of the block. Statements are executed whenever...
Influenced:
Language Paradigms:
View entire collection »Influenced By:
Introduced:
- 1996
Groovy
Groovy is an object-oriented programming language for the Java platform as an alternative to the Java programming language. It is a dynamic language with features similar to those of Python, Ruby, Perl, and Smalltalk. It can be used as a scripting...
Parent Language:
Developers:
Language Paradigms:
View entire collection »Introduced:
- 2003
Generic Java programming language
The Generic Java programming language (Generic Java or GJ) is a superset of the Java programming language which adds support for generic programming. It was designed by the team who had previously created the Pizza language.
Generic Java was...