* Share This

Programming Language Paradigm table

table started by robert for the Computers Commons
There is no user-contributed description yet.

44 Programming Language Paradigm topics

Add more Use Results
Plot Points:

x

   
x name x image x Languages x article
Showing 1 - 44 « prev next »
+

Do you know something that's missing from this view? Add it!

If you have a list you can use our wizard to match it with topics that may already be in Freebase.
Go to the import tool »
x Array programming   APL
In computer science, array programming languages (also known as vector or multidimensional languages) generalize operations on scalars to apply transparently to vectors, matrices, and higher dimensional arrays. Array programming primitives concisely...
Nial
J
IDL programming language
A+
more
x Stack-oriented programming language Java bytecode
A stack-oriented programming language is one that relies on a stack machine model for passing parameters. Several programming languages fit this description, notably Forth, RPL and PostScript, and also many Assembly languages (but on a much lower...
Microsoft Intermediate Language
PostScript
Forth
Joy
more
x Object-oriented programming   Perl
Object-oriented programming (OOP) is a programming paradigm that uses "objects" — data structures consisting of datafields and methods — and their interactions to design applications and computer programs. Programming techniques may include features...
C#
Java
Objective-C
C++
more
x Procedural programming   Lisp
Procedural programming can sometimes be used as a synonym for imperative programming (specifying the steps the program must take to reach the desired state), but can also refer (as in this article) to a programming paradigm based upon the concept of...
Fortran
Common Lisp
BBC BASIC
Perl
more
x Imperative programming   Python
In computer science, imperative programming is a programming paradigm that describes computation in terms of statements that change a program state. In much the same way that imperative mood in natural languages expresses commands to take action,...
JavaScript
C#
ALGOL 68
ALGOL
more
x Reflective programming   Oberon
A Reflective programming language or system is one that includes the ability of a program to reference its own program state and instructions as a data structure. It is not necessary for a reflective programming language to modify its own programs...
Dylan
Ruby
MUMPS
JavaScript
x Structured programming   Pascal
Structured programming can be seen as a subset or subdiscipline of procedural programming, one of the major programming paradigms. It is most famous for removing or reducing reliance on the GOTO statement. Historically, several different structuring...
Modula-2
Fortran
PL/I
APL
more
x Modular Programming   Modula-2
Modular programming is a programming paradigm that was first presented by Information & Systems Institute, Inc. at the National Symposium on Modular Programming in 1968. Larry Constantine was a principal presenter and modular programming movement...
Mesa
Modula
x Dynamic programming language   Dylan
Dynamic programming language is a term used broadly in computer science to describe a class of high-level programming languages that execute at runtime many common behaviors that other languages might perform during compilation, if at all. These...
Pike
Groovy
Ruby
Mantra
more
x Functional programming   Scheme
In computer science, functional programming is a programming paradigm that treats computation as the evaluation of mathematical functions and avoids state and mutable data. It emphasizes the application of functions, in contrast to the imperative...
ML
Caml
Haskell
Lisp
more
x Logic programming   Prolog
Logic programming is, in its broadest sense, the use of mathematical logic for computer programming. In this view of logic programming, which can be traced at least as far back as John McCarthy's [1958] advice-taker proposal, logic is used as a...
Mercury
SNOBOL
Inform
Oz
more
x Interpreted language   VBScript
In computer programming an interpreted language is a programming language whose implementation often takes the form of an interpreter. Theoretically, any language may be compiled or interpreted, so this designation is applied purely because of...
Haskell
Lisp
Python
Scheme
more
x T-SQL   Microsoft SQL Server  
x Strongly-typed programming language   Java
In computer science and computer programming, the term strong typing is used to describe those situations where programming languages specify one or more restrictions on how operations involving values having different data types can be intermixed....
x Component-oriented programming   C#  
x Write once, run anywhere   Java
"Write once, run anywhere" (WORA), or sometimes Write once, run everywhere (WORE), is a slogan created by Sun Microsystems to illustrate the cross-platform benefits of the Java language. Ideally, this means Java can be developed on any device,...
x Virtual machine Virtual PC 3 for Mac OS running Windows 95 Java
In computer science, a virtual machine (VM) is a software implementation of a machine (computer) that executes programs like a real machine. A virtual machine was originally defined by Popek and Goldberg as "an efficient, isolated duplicate of a...
x Ajax   JavaScript
Ajax, sometimes written as AJAX (shorthand for asynchronous JavaScript + XML), is a group of interrelated web development techniques used on the client-side to create interactive web applications or rich Internet applications. With Ajax, web...
x Multi-agent system StarLogo
A multi-agent system (MAS) is a system composed of multiple interacting intelligent agents. Multi-agent systems can be used to solve problems which are difficult or impossible for an individual agent or monolithic system to solve. Examples of...
x Example Centric Programming   Subtext  
x Knowledge-based systems   GeneXus
According to the Free On-line Dictionary of Computing (FOLDOC), a knowledge-based system is a program for extending and/or querying a knowledge base. The Computer User High-Tech Dictionary defines a knowledge-based system as a computer system that...
CycL
x Design by contract   Eiffel
Design by Contract (DbC) or Programming by Contract is an approach to designing computer software. It prescribes that software designers should define formal, precise and verifiable interface specifications for software components based upon the...
Sing sharp
Spec sharp
x Concatenative programming language   Factor
A concatenative programming language is one in which all terms denote functions and the juxtaposition of terms denotes function composition. The combination of a compositional semantics with a syntax that mirrors such a semantics makes...
Joy
Cat
Forth
PostScript
more
x Compiled language   Haskell
A compiled language is a programming language whose implementations are typically compilers (translators which generate machine code from source code), and not interpreters (step-by-step executors of source code, where no translation takes place)....
x Concurrent computing   Stackless Python
Concurrent computing is a form of computing in which programs are designed as collections of interacting computational processes that may be executed in parallel. Concurrent programs can be executed sequentially on a single processor by interleaving...
Alice ML
Erlang
Limbo programming language
Orc
more
x Declarative programming   Prolog
In computer science, declarative programming is a programming paradigm that expresses the logic of a computation without describing its control flow. Many languages applying this style attempt to minimize or eliminate side effects by describing what...
GeneXus
Haskell
JavaFX Script
Miranda
more
x Multi-paradigm programming language   Oz
A multi-paradigm programming language is a programming language that supports more than one programming paradigm. As Leda designer Timothy Budd holds it: The idea of a multiparadigm language is to provide a framework in which programmers can work in...
Common Lisp
Ada
CLU
Dylan
more
x Event driven programming language   SuperTalk
Event driven programming is a style of programming where the flow of the program is determined by user actions (mouse clicks, key presses) or messages from other programs. In contrast, in batch programming the flow is determined by the programmer....
x Prototype-based programming   Io
Prototype-based programming is a style of object-oriented programming in which classes are not present, and behavior reuse (known as inheritance in class-based languages) is performed via a process of cloning existing objects that serve as...
JavaScript
Self
MOO programming language
NewtonScript
more
x Generic programming   C++
Generic programming is a style of computer programming in which algorithms are written in terms of to-be-specified-later types that are then instantiated when needed for specific types provided as parameters. This approach, pioneered by Ada in 1983,...
x Mathematics APL
Mathematics is the study of quantity, structure, space, relation, change, and various topics of pattern, form and entity. Mathematicians seek out patterns and other quantitative dimensions, whether dealing with numbers, spaces, natural science,...
x Combinatory logic   APL
Combinatory logic is a notation introduced by Moses Schönfinkel and Haskell Curry to eliminate the need for variables in mathematical logic. It has more recently been used in computer science as a theoretical model of computation and also as a basis...
Haskell
x Operator   APL
In mathematics, an operator is a function which operates on (or modifies) another function. Often, an "operator" is a function which acts on functions to produce other functions (the sense in which Oliver Heaviside used the term); or it may be a...
x Visual programming language   Pure Data
A visual programming language (VPL) is any programming language that lets users create programs by manipulating program elements graphically rather than by specifying them textually. A VPL allows programming with visual expressions, spatial...
Prograph
x Function-level programming   J
In computer science, function-level programming refers to one of the two contrasting programming paradigms identified by John Backus in his work on programs as mathematical objects, the other being value-level programming. In his 1977 Turing award...
FP
FL
x Distributed programming   Alice ML
Distributed programming is a programming paradigm focusing on design distributed, open, scalable, transparent, fault tolerant systems. This paradigm is a natural result of the use of computers to form networks. Nearly any programming language that...
x Actor model   Erlang
In computer science, the Actor model is a mathematical model of concurrent computation that treats "actors" as the universal primitives of concurrent digital computation: in response to a message that it receives, an actor can make local decisions,...
x Dataflow language   SISAL
In computer programming, dataflow programming implements dataflow principles and architecture, and models a program, conceptually if not physically, as a directed graph of the data flowing between operations. Dataflow programming languages share...
Prograph
x Lazy evaluation   Haskell
In computer programming, lazy evaluation is the technique of delaying a computation until the result is required. The benefits of lazy evaluation include: performance increases due to avoiding unnecessary calculations, avoiding error conditions in...
Lazy ML
Miranda
x Parallel computing The Cray-2 was the world's fastest computer from 1985 to 1989 X10
Parallel computing is a form of computation in which many calculations are carried out simultaneously, operating on the principle that large problems can often be divided into smaller ones, which are then solved concurrently ("in parallel"). There...
Fortress programming language
Chapel programming language
Occam
Oz
more
x Database programming   K  
.QL
SQL
MUMPS
Object Query Language
more
x Educational programming language   Logo
An educational programming language is a programming language that is designed primarily as a learning instrument and not so much as a tool for writing real-world application programs. Many educational programming languages position themselves...
EToys
Scratch
AgentSheets
StarLogo
x Role-oriented programming    
Role-oriented programming is a form of computer programming aimed at expressing things in terms which are analogous to our conceptual understanding of the world. This should make programs easier to understand and maintain. The main idea of role...
x expression-based   UNICON