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