Encyclopedia  |   World Factbook  |   World Flags  |   Reference Tables  |   List of Lists     
   Academic Disciplines  |   Historical Timeline  |   Themed Timelines  |   Biographies  |   How-Tos     
Sponsor by The Tattoo Collection
Categorical list of programming languages
Main Page | See live article | Alphabetical index

Categorical list of programming languages

This is a list of programming language grouped by category.

Table of contents
1 Assembly languages
2 Authoring languages
3 CLI languages (batch languages)
4 Compiled languagess
5 Concurrent languages
6 Curly-brace languages
7 Dataflow language
8 Data-oriented languages
9 Data-structured languages
10 Extension languagess
11 Fourth generation languages
12 Functional languagess
13 Interpreted languagess
14 Iterative
15 Syntax handling languages
16 Little languages
17 Logical languagess
18 Machine languages
19 Macro languages
20 Non-English-based languages
21 Object-oriented languages
22 Off-side rule
23 Procedural languages
24 Prototype-based languages
25 Rule-based languages
26 Scripting languages
27 Turing tarpits
28 XML-based languagess
29 See also

Assembly languages

These directly correspond to a machine language (see below) in order to allow machine code instructions to be written in a form understandable by humans. Assembly languages allow programmers to use symbolic addresses which are later converted to absolute addresses by the assembler. Most assemblers also allow for macros and symbolic constants as well.

Authoring languages

CLI languages (batch languages)

Compiled languagess

Concurrent languages

These define commands as messages to a process. Processes are collections of message passes. Generally based on the Pi-Calculus, these have had no commercial success, except Erlang.

Curly-brace languages

Languages whose syntax defines statement blocks using curly-brace characters { and }. All are descended from or strongly influenced by C. Examples of curly-brace languages include:

Dataflow language

These rely on a (usually visual) representation of the flow of data to specify the program. Frequently used for reacting to discrete events or for processing streams of data. Examples of dataflow languages include:

Data-oriented languages

These provide powerful ways of searching and manipulating the relations that have been described as entity relationship tables which map one set of things into other sets. Examples of data-oriented languages include:

Data-structured languages

These are languages whose logic is structured in a way similar to their data. These languages are generally well suited to reflection and introspection. Examples of data-structured languages include:

Extension languagess

These are languages intended to be embedded into another program and used to harness its features in extension scripts.

Fourth generation languages

These are high-level languages built around database systems. They are generally used in commercial environments.

Functional languagess

These define programs and subroutines as mathematical functions. Many so-called functional languages are "impure" and also contain imperative features. Examples of functional languages include:

Interpreted languagess


Languages built around or offering generatorss

Syntax handling languages

Little languages

These serve a specialized problem domain

Logical languagess

These specify a set of attributes that a solution should have rather then a set of steps to obtain such a solution. Examples of logical languages include:

Machine languages

These are directly executable by the computer's CPU. It is typically formulated as bit patterns, usually represented in octal or hexadecimal. Each group of npatterns (often 1 or more bytes) caused the circuits in the CPU to execute one of the fundamental operations of the hardware. The activation of specific electrical inputs (eg, CPU package pins for microprocessors), and logical settings for CPU state values, control the processor's computation. Individual machine languages are processor specific and are not portable; they are (essentially) always defined by the CPU developer, not by 3rd parties. The symbolic version, the processor's assembly language, is also -- in most cases -- defined by the developer. Since processors come in families which are based on a shared architecture, the same basic assembly language style can often be used for more than one CPU. Each of the following CPUs served as the basis for a family of processors:

Macro languages

These embed small pieces of executable code inside a piece of free-form text.

Non-English-based languages

Object-oriented languages

These are languages that support 'data & method' objects. The data structures are defined in object classes, which also include executable code (methods). Thus the effects of a change to the code remain localized. Object classes can be extended by inheritance in most of these languages. Examples of object-oriented languages include:

Off-side rule

These languages are languages where blocks are indicated by their indentation

Procedural languages

These are based upon the concept of the unit and scope (the data viewing range of an executable code statement). A procedural program is composed of one or more units or modules--either user coded or provided in a code library; each module is composed of one or more procedures, also called a function, routine, subroutine, or method, depending on the programming language. Examples of procedural languages include:

Prototype-based languages

These are a special type of object-oriented programming languages, where the distinction between classes and instances have been removed. Examples of prototype-based languages include:

Rule-based languages

These instantiate rules when activated by conditions in a set of data. Of all possible activations, some set will be selected and the statements belonging to those rules will be executed. Examples of rule-based languages include:

Scripting languages

This term has two apparently diffirent, but in fact similar meanings.
In a traditional sense, scripting languages are designed to automate frequently used tasks that usually involve calling or passing commands to external programs.
Many complex application programs allow users to implement custom functions by providing them with built-in languages. Those which are of interpretive type, are often called scripting languages.
More recently many of these applications have chosen to "build in" traditional scripting languages, such as Perl or Visual BASIC, but there are quite a few "native" scripting languages still in use.

Turing tarpits

XML-based languagess

These are languages based on or that operate on XML. Although the big-boy equivalents of oracle/postgresql/mssql don't yet exist for XML, there are languages to navigate through it and its more tree-oriented structure:

See also