ENCYCLOPEDIA 4U .com



Encyclopedia Home Page

Google
  Web Encyclopedia4u.com

 

Categorical list of programming languages

  1. Alphabetical list of programming languages
  2. Chronological list of programming languages
  3. Generational list of programming languages

See: Programming language


  • Assembly languages 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
    • Tutor
    • Coursewriter
    • PILOT

  • Batch languages
    • sh (the (Stephen) Bourne shell from AT&T)
    • bash the b(ourne)a(gain)sh(ell) from Gnu/FSF)
    • csh (C-like syntax shell from Bill Joy at UC Berkeley)
    • ksh (the David K(orn)sh(ell) from AT&T)
    • REXX

  • Compiled languagess
    • BASIC (some dialects, including the first version of Dartmouth BASIC)
    • C++ (some implementations)
    • Delphi (Borland's Object Pascal development system)
    • Java (orginally from Sun Microsystems)
    • Perl (invented by Larry Wall; usually interpreted)
    • Visual Basic (from Microsoft)
    • FORTRAN (the first high level, compiled, language -- from IBM, John Backus, et al)
    • COBOL (designed to be so simple even supervisors could follow it -- a US DoD inspired development)
    • Algol (extremely influential language design. The second high level language compiler.)

  • Curly-brace languagess are 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:
    • C (dev ca 1970 by D Ritchie & K Thompson at Bell Labs -- closely associated with the Unix operating system)
    • C++
    • C# (the C for the .NET project)
    • ECMAScript (aka, JavaScript)
    • Java
    • Perl
    • Coyote (a version of C intended to make some common programming errors much harder -- eg buffer overflow)
    • D (a step beyond C from Walter Bright, compiler producer extraordinary)
    • Pike (another step beyond C)
    • PHP

  • Dataflow languages 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:
    • LabView
    • Max
    • Pure Data

  • Data-oriented languages 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:
    • dBase a relational database access language
    • SQL
    • M (an ANSI standard general purpose language with specializations for database work.)

  • Data-structured languages are languages whose logic is structured in a similar way as their data. These languages are generally well suited to reflection and introspection. Examples of data-structured languages include:
    • Lisp, and descendents like Scheme and Tcl. Also TRAC. All use lists as their organizing principle
    • FORTH, Poplog and Postscript (all conceptually based on an open stack model for their operations)
    • APL (in which data and code alike are stored and operated on as arrays. By Kenneth Iverson)
    • It may be argued that assembly languages which statically link data inline with instructions can be considered in this class, albeit in the most primitive way.

  • Functional languagess 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
    • BASIC (some dialects)
    • C++ (some, esp early, implementations)
    • Perl (most implementations)
    • VBScript
    • LISP (a very early language based (mostly) on Churche's lamba calculus -- By John McCarthy et al at MIT)
    • Most scripting languages (below)

  • Syntax handling languagess
    • Gnu Bison (the FSF's version of Yacc)
    • Lex (Lexical analysis -- from Bell Labs)
    • Gnu FLEX (the FSF's version of Lex)
    • M4
    • Yacc (yet another compiler compiler -- from Bell Labs)

  • Logical languagess 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:
    • Prolog which formulates data and the program evaluation mechanism as a special form of mathematical logic known as Horn logic and a general proving mechanism called logical resolution
    • Mercury which is based on Prolog

  • Machine languages 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:
  • Procedural languagess 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:
    • Ada (developed as a result of a DoD initiative to define a standard programming language)
    • BASIC (BASICs are innocent of most modularity in (especially) versions prior to about 1990)
    • C
    • C++ (C with objects + much else)
    • C# (from Microsoft, essentially an attempt at an improved C)
    • CFM
    • COBOL
    • Component Pascal (an Oberon-2 variant)
    • Delphi
    • ECMAScript (JavaScript)
    • FORTRAN (better modularity in later Standards)
    • Java
    • Modula-2 (fundamentally based on modules)
    • Oberon (improved, smaller, faster, safer follow-on for Modula-2)
    • M (more modular in its first release than a language of the time should have been; the standard has become still more modular since then)
    • Pascal (successor to Algol60 and predecessor of Modula-2)
    • Perl
    • /A>
    • Rapira
    • VBScript
    • Visual Basic

  • Object-oriented languagess 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:
    • Ada 95
    • C++
    • C#
    • Common Lisp
    • Delphi
    • ECMAScript (aka JavaScript -- originally from Netscape)
    • Eiffel
    • Java (closely related to C++, but with garbage collection, removal of unsafe features, compilation to universally runnable 'bytecode', protective sandbox for security -- originally from Sun Micro)
    • Modula-2|modula-3 (data abstraction, information hiding, strong typing, full modularity -- from N Wirth)
    • Modula-3 (added more object oriented features to Modula-2)
    • NewtonScript
    • Oberon(full object orientation equivalence in an original, strongly typed, Wirthian manner)
    • Objective C
    • Perl 5
    • PHP
    • PowerBuilder
    • Python (object oriented scripting language)
    • Ruby
    • Sather
    • Self
    • Simula (the first object oriented language -- from Norway)
    • Smalltalk (full bore object orientation -- from Xerox PARC)
    • VBScript (Microsoft Office 'macro scripting' language)
    • Visual Basic

  • Prototype-based languagess 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 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 are designed to automate frequently used tasks that usually involve calling or passing commands to external programs.
  • Macro languages embed small pieces of executable code inside a piece of free-form text.
    • M4 (originally from AT&T, bundled with Unix)
    • C Preprocessor
    • PHP
    • Stage 2
    • Scripting languages such as Tcl and ECMAScript (Javascript) have been embedded into applications so that they behave like macro languages.

  • Turing tarpits
  • XML-based languagess 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:
  • Concurrent languages are those that 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.
    • Concurrent Pascal (by Brinch-Hansen)
    • Occam2
    • Pict




Content on this web site is provided for informational purposes only. We accept no responsibility for any loss, injury or inconvenience sustained by any person resulting from information published on this site. We encourage you to verify any critical information with the relevant authorities.



Copyright © 2005 Par Web Solutions All Rights reserved.
| Privacy

This article is licensed under the GNU Free Documentation License. It uses material from the Wikipedia article "Categorical list of programming languages".