programming language

Difference between version 20 and 21 - Previous - Next
tA '''programming language''' is a language used for commundirecating insthe operucations
t of a computer.



** See Also **

   [Tcl and other languages]:   



** Description **

Programming languages are categorized in various ways:

   The role they play in a system:   '''[scripting language]''' or '''system language'''
   
   design features:   '''[dynamic language%|%dynamic]''', '''[stack frame%|%stack-based]'''
   
   targeted use:   '''[query language%|%data query]''', '''[lisp%|%list processing]''', '''[string processing]''', '''[pattern matching]''', '''[http://en.wikipedia.org/wiki/Modeling_language%|%modeling]'''

   mode of execution:   '''[interpreter%|%interpreted]''', '''compiled'''

   field:   '''[markup language%|%markup]''', '''[fortran%|%formula translation]''', '''[Logic programming%|%logic]'''


   level of abstraction:   '''[assembly language]'''
   mutability:   '''Imperative language''':  Data is mutable.  '''Dynamic Language''':   The program is mutable.   '''Functional language''':   Nothing is mutable.

   scope:   '''[domain-specific language%|%domain-specific]''', '''general-purpose'''

   style:   '''[declarative programming%|%declarative]''', '''[imperative programming%|%imperative]'''

   technique:   '''control flow''', '''[flow-based programming%|%data flow]''', '''rules-based''', [Meta Programming]

   paradigm:   '''[Functional Programming%|%functional programming]''', '''[object orientation%|%object-oriented]'''

Almost none of these categories are mutually-exclusive, but are more like
dimensions that fix the "coordinates" of a language.  [Tcl] is one of the few
languages that can legitimately claim to be almost all of these things, as a
[http://wiki.tcl.tk/_/random%|%random stroll] through this wiki will evidence.



** Languages **

Because of its polymorphic meta-nature, the [Tcl] community is populated by
language [connoisseurs] who have given various languages a presence on this
wiki:

   [Ada]:   

   [Applescript]:   

   [Arc]:   

   [APL]:   

   [Assembly Language]:   the least common denominator

   [awk]:   

   [bash]:   

   [BASIC]:   

   [Beatnik]:   

   [Brainfuck]:   

   [C]:   

   [C#]:   

   [Cobol]:   

   [C++]:   

   [D]:   

   [Delphi]:   

   [Dylan]:   

   [ECMAscript] ([Javascript]):   

   [Eiffel]:   

   [Euphoria]:   

   [elisp]:   

   [Erlang]:   

   [execline]:   

   [Factor Programming Language%|%Factor]:   A concatenative programming langage.

   [Forth]:   

   [F3]:   

   [Flare]:   A failed attempt at a [Lisp]-like language in [XML]

   [Forth]:   

   [Fortran]:   

   [Funge]:   

   [g]:   

   [Groovy]:   an agile dynamic language for the [JVM] combining lots of great features from languages like [Python], [Ruby] and [Smalltalk] and making them available to the [Java] developers using a Java-like [syntax]

   [Guile]:   An embeddable [Scheme] implementation, intended by the [FSF] to be the universal [script%|%scripting] engine

   [Haskell]:   [polymorphism%|%polymorphicly]-typed, lazy, purely [functional programming%|%functional] language

   [Hecl]:   [scripting] language implemented in [Java]

   [Icon Programming Language]:   A block-structured, pascal-influenced, descendant of [Snobol].

[Io Programming Language]: A language similar to Tcl in that it is homoiconic - code and data are interchangeable.

   [J]:   a descendant of [APL] particularly strong in the mathematical, statistical, and logical analysis of data

   [Java]:   [class]-based, [object orientation%|%object-oriented], with a [JVM%|%virtual machine] featuring automatic memory management, developed and championed by [COMPANY: Sun Microsystems, Inc.%|%Sun]

   [javascript]:   a prototype-based [scripting language] designed specifically to be embedded into the Netscape web browser

   Joy:   See [Playing Joy]

   [ksh]:   

   [L]:   

   [LIL]:   

   [LISP]:   

   [Logo]:   

   [Lua]:   

   [Malbolge]:   

   [MEL]:   A scripting and command language included in [http://www.autodesk.com/products/maya/overview%|%Maya]

   [Mercury]:   A GPL logic functional programming, with the semantics of modern functional programming, the expressiveness of logic languages, a strong type system, a module system, a mode system, algebraic data types, parametic polymorphism, support for higher order programming and a determinism system.

   [Metafont]:   Font compiler written by [Donald E. Knuth], so that he could create fonts for his [TeX] program.

   [m4]:   
   [ML]:   aA family of statically-typed (with type-inference), strict, impure [functional programming] languages.

   [Mozart]:   

   [Nim Programming Language%|%Nim] (formerly Nimrod):   Statically-typed, imperative.

   [Objective C]:   
   [Oberon]:   aAn [object orientation%|%object-oriented] evolutionary descendant of Modula-2.
   [Pascal], by [Niklaus Wirth]:   iInitially developed for teaching programming at ETH Zürich.

   [Perl]:   
   [Phantom]:   iInterpreted language designed for large-scale interactive distributed applications; based on a safe extended subset of Modula-3; includes a Tk binding.
   [PHP]:   aA [scripting language] mainly designed for [web] development.

   [PL/I]:   

   [Postscript]:   

   [PowerPro]:   

   [Processing]:   

   [Prolog]:   

   [Python]:   

   [R]:   

   [Ratfor]:   

   [Rebol]:   

   [Rexx]:   

   [Ruby]:   

   [Sather]:   

   [Scheme]:   
   [Self Programming Language%|%Self]:   [Prototype Pattern in Tcl%|%pPrototype]-based [dynamic language%|%dynamic] [object orientation%|%object-oriented].

   [SLIDE: Scene Language for Interactive Dynamic Environments]:   

   [Smalltalk]:   

   [SML]:   

   [SQL]:   

   [snobol]:   
   [Tcl]:   forThe compost valuable of thenessm ;)all.

   [Thyrd]:   
   [TKS%|%TkScript]:   uUnrelated to [Tk]

   [TOS]:   

   [TRAC]:   

   [Visual Basic]:   

<<categories>> Glossary | Language