Share This
Multi-paradigm programming language
Programming languages can be grouped by the number and types of paradigms supported.
A concise reference for the programming paradigms listed in this article.
Learn more about Multi-paradigm programming language »
Add More Topics
Save this view to a base, or just for yourself.
about 95 Programming Language topics matching:
Filter this CollectionOz
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
Ada
Ada is a structured, statically typed, imperative, wide-spectrum, and object-oriented high-level computer programming language, extended from Pascal and other languages. It was originally designed by a team led by Jean Ichbiah of CII Honeywell Bull...
Language Designers:
Language Paradigms:
Introduced:
- 1983
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:
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:
Erlang
Erlang is a general-purpose concurrent programming language and runtime system. The sequential subset of Erlang is a functional language, with strict evaluation, single assignment, and dynamic typing. For concurrency it follows the Actor model. It...
Language Designers:
Developers:
Language Paradigms:
View entire collection »Influenced By:
Introduced:
- 1987
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
Icon
Icon is a very high-level programming language featuring goal directed execution and many facilities for managing strings and textual patterns. It is related to SNOBOL, a string processing language. Icon is not object-oriented, but an object...
Dialects:
Parent Language:
Influenced:
Language Paradigms:
View entire collection »Introduced:
- 1977
Logo
LOGO (an acronym for Logic Oriented Graphic Oriented) is a computer programming language used for functional programming. It is an adaptation and dialect of the Lisp language; some have called it Lisp without the parentheses. Today, it is known...
Language Designers:
Dialects:
Parent Language:
Language Paradigms:
- Functional programming ,
- Educational programming language ,
- Procedural programming ,
- Multi-paradigm programming language
Influenced By:
Introduced:
- 1967
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
ML
ML is a general-purpose functional programming language developed by Robin Milner and others in the late 1970s at the University of Edinburgh, whose syntax is inspired by ISWIM. Historically, ML stands for metalanguage: it was conceived to develop...
Language Designers:
Language Paradigms:
View entire collection »Introduced:
- 1973
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
Perl
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
PostScript
PostScript (PS) is a dynamically typed concatenative programming language created by John Warnock and Charles Geschke in 1982. PostScript is best known for its use as a page description language in the electronic and desktop publishing areas.
The...
Language Paradigms:
- Stack-oriented programming language ,
- Concatenative programming language ,
- Procedural programming ,
- Multi-paradigm programming language
Introduced:
- 1982
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
REBOL
REBOL (Relative Expression Based Object Language; REB-ol) is a cross-platform data exchange language and a multi-paradigm dynamic programming language originally designed by Carl Sassenrath for network communications and distributed computing.
REBOL...
Language Designers:
Influenced:
Language Paradigms:
- Functional programming ,
- Multi-paradigm programming language ,
- Structured programming ,
- Prototype-based programming
Introduced:
- 1997
Scheme
Scheme is one of the two main dialects of the programming language Lisp. Unlike Common Lisp, the other main dialect, Scheme follows a minimalist design philosophy specifying a small standard core with powerful tools for language extension. Its...
Parent Language:
Language Paradigms:
- Functional programming ,
- Interpreted language ,
- Multi-paradigm programming language ,
- Procedural programming
Introduced:
- 1975
SQL
SQL (Structured Query Language) (pronounced /ˌɛs.kjuːˈɛl/ ES-kyoo-EL ) is a database computer language designed for managing data in relational database management systems (RDBMS), and originally based upon Relational Algebra. Its scope includes...
Developers:
Language Paradigms:
View entire collection »Influenced By:
Introduced:
- 1974
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
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 a free open source project...
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
Poplog
Poplog is a powerful multi-language, multiparadigm, reflective, incrementally compiled software development environment, originally created in the UK for teaching and research in Artificial Intelligence at the University of Sussex.
After an...
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
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
Standard ML
Standard ML (SML) is a general-purpose, modular, functional programming language with compile-time type checking and type inference. It is popular among compiler writers and programming language researchers, as well as in the development of theorem...
Parent Language:
Language Paradigms:
View entire collection »Influenced By:
ABC
ABC is an imperative general-purpose programming language and programming environment developed at CWI, Netherlands by Leo Geurts, Lambert Meertens, and Steven Pemberton. It is interactive, structured, high-level, and intended to be used instead of...
Dialects:
Developers:
Influenced:
Language Paradigms:
- Procedural programming ,
- Structured programming ,
- Imperative programming ,
- Multi-paradigm programming language
Influenced By:
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
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
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
SPARK programming language
SPARK is a formally-defined computer programming language based on the Ada programming language, intended to be secure and to support the development of high integrity software used in applications and systems where predictable and highly reliable...
Language Paradigms:
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:
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. Created by Dr. Marcus Barry.
ARS is an abstraction from the Lambda Calculus, taking its three basic...
Language Paradigms:
View entire collection »Influenced By:
Introduced:
- 2002
ChucK
ChucK is a concurrent, strongly timed audio programming language for real-time synthesis, composition, and performance, which runs on Mac OS X, Linux, and Microsoft Windows. It is designed to favor readability and flexibility for the programmer over...
Language Paradigms:
Introduced:
- 2003
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
ActionScript
ActionScript is a scripting language based on ECMAScript. ActionScript is used primarily for the development of websites and software using the Adobe Flash Player platform (in the form of SWF files embedded into Web pages), but is also used in some...
Language Designers:
Parent Language:
Influenced:
Language Paradigms:
- Object-oriented programming ,
- Multi-paradigm programming language ,
- Functional programming ,
- Prototype-based programming
Introduced:
- 1998
Prograph
Prograph is a visual, object-oriented, dataflow, multiparadigm programming language that uses iconic symbols to represent actions to be taken on data. Commercial Prograph software development environments such as Prograph Classic and Prograph CPX...
Language Paradigms:
- Object-oriented programming ,
- Multi-paradigm programming language ,
- Visual programming language ,
- Dataflow language
Introduced:
- 1983
Polyphonic C sharp
Polyphonic C# is an extension of the C# programming language.
It includes a new concurrency model in which objects can have both synchronous and asynchronous methods. The language is being developed by Nick Benton, Luca Cardelli and Cédric Fournet...
Parent Language:
Influenced:
Language Paradigms:
View entire collection »Influenced By:
Introduced:
- 2002
Obliq programming language
Obliq is an interpreted, object-oriented programming language designed to make distributed, and locally multi-threaded, computation simple and easy for the programmer, while providing program safety and implicit type system. The interpreter is...
Language Paradigms:
View entire collection »RPG programming language
RPG is a high-level programming language (HLL) for business applications. Originally the initials stood for Report Program Generator, but currently it is referred to only as "RPG". IBM is the creator and primary vendor of RPG, but the language is...
Developers:
Influenced:
Language Paradigms:
Introduced:
- 1959
ALGOL 68
ALGOL 68 (short for ALGOrithmic Language 1968) is an imperative computer programming language that was conceived as a successor to the ALGOL 60 programming language, designed with the goal of a much wider scope of application and more rigorously...
Parent Language:
Language Paradigms:
View entire collection »Joy
The Joy programming language is a purely functional programming language that was produced by Manfred von Thun of La Trobe University in Melbourne, Australia. Joy is based on composition of functions rather than lambda calculus. It has turned out to...
Language Designers:
Language Paradigms:
- Concatenative programming language ,
- Functional programming ,
- Multi-paradigm programming language ,
- Stack-oriented programming language
Introduced:
- 2001
Windows PowerShell
Windows PowerShell is an extensible automation engine from Microsoft, consisting of a command-line shell and associated scripting language. Codenamed "Monad", it was first shown publicly at the Professional Developers Conference in September 2003....
Language Paradigms:
- Object-oriented programming ,
- Functional programming ,
- Imperative programming ,
- Multi-paradigm programming language
Introduced:
- 2006
StarLogo
StarLogo is an agent-based simulation language developed by Mitchel Resnick, Eric Klopfer, and others at MIT Media Lab and MIT Teacher Education Program. It is an extension of the Logo programming language, a dialect of Lisp. Designed for education,...
Language Designers:
Parent Language:
Language Paradigms:
- Multi-agent system ,
- Procedural programming ,
- Multi-paradigm programming language ,
- Educational programming language
Influenced By:
Euclid programming language
Euclid is an imperative programming language for writing verifiable programs. It was designed by Butler Lampson and associates at the Xerox PARC lab in the mid 1970s. The implementation was led by Ric Holt at the University of Toronto and James...
Language Designers:
Language Paradigms:
- Functional programming ,
- Structured programming ,
- Imperative programming ,
- Multi-paradigm programming language
Influenced By:
Combined Programming Language
The Combined Programming Language (CPL) was a computer programming language developed jointly between the Mathematical Laboratory at the University of Cambridge and the University of London Computer Unit during the 1960s. The collaborative effort...
Language Paradigms:
- Multi-paradigm programming language ,
- Imperative programming ,
- Structured programming ,
- Procedural programming
Influenced By:
Introduced:
- 1963
JScript .NET
JScript .NET is a .NET programming language developed by Microsoft as a natural successor to Microsoft's Active Scripting language JScript.
Both JScript and JScript .NET are languages whose syntax is based on that of the C language. JScript began as...
Language Paradigms:
T
The T programming language is a dialect of the Scheme programming language developed in the early 1980s by Jonathan A. Rees and Norman I. Adams of Yale University as an experiment in language design and implementation.
T's purpose is to test the...
Parent Language:
Language Paradigms:
- Functional programming ,
- Object-oriented programming ,
- Imperative programming ,
- Multi-paradigm programming language
Influenced By:
Factor
Factor is a stack-oriented programming language created by Slava Pestov. Factor is dynamically typed and has automatic memory management, as well as powerful metaprogramming features. The language has a single implementation featuring a self-hosted...
Language Designers:
Influenced:
Language Paradigms:
- Concatenative programming language ,
- Multi-paradigm programming language ,
- Stack-oriented programming language
Introduced:
- 2003
F-Script programming language
F-Script is an object-oriented scripting language developed by Philippe Mougin. In a nutshell, F-Script is Smalltalk with support for Array programming.
F-Script is based on a pure object paradigm (every entity manipulated within the language is an...
Language Paradigms:
View entire collection »SETL
SETL (SET Language) is a very-high level programming language based on the mathematical theory of sets. It was originally developed by Jack Schwartz at the NYU Courant Institute of Mathematical Sciences in the late 1960s.
SETL provides two basic...
Language Paradigms:
View entire collection »Introduced:
- 1969
Cω
Cω (pronounced C omega, /Ō-mē'gɘ/ or /Ō-mĕg'ɘ/; usually written as "Cw" or "Comega language") is a free extension to the C# programming language, developed by the WebData team in Microsoft SQL Server in collaboration with Microsoft Research in the...
Parent Language:
Influenced:
Language Paradigms:
View entire collection »Introduced:
- 2003
Oaklisp
Oaklisp is a portable object-oriented Scheme by Kevin J. Lang and Barak A. Pearlmutter while Computer Science PhD students at Carnegie Mellon University. Oaklisp uses a superset of Scheme syntax. It is based on generic operations rather than...
Language Paradigms:
- Object-oriented programming ,
- Functional programming ,
- Procedural programming ,
- Multi-paradigm programming language
Introduced:
- 1986
Object-Oriented Turing
Object-Oriented Turing is an extension of the Turing programming language and a replacement for Turing Plus created by Ric Holt of the University of Toronto in 1991. It is imperative, object-oriented, and concurrent. It has modules, classes, single...
Parent Language:
Language Paradigms:
- Object-oriented programming ,
- Procedural programming ,
- Multi-paradigm programming language ,
- Concurrent computing
Introduced:
- 1991
C*
C* is an object-oriented, data-parallel superset of ANSI C with synchronous semantics, for the Connection Machine, designed by Thinking Machines, 1987. C* adds a "domain" data type and a selection statement for parallel execution in domains.
An...
Parent Language:
Developers:
Language Paradigms:
- Object-oriented programming ,
- Parallel computing ,
- Imperative programming ,
- Multi-paradigm programming language
Influenced By:
Introduced:
- 1987
Perl 6
Perl 6 is a programming language specification. It serves as a major revision to Perl, introducing elements of many modern and historical languages. Perl 6 is intended to have many implementations. Backward compatibility with earlier versions of...
Language Designers:
Language Paradigms:
Introduced:
- 2000