Directory

Encyclopedia

NodeWorks
                              ENCYCLOPEDIA

Link Checker

Home
Encyclopedia : S : SY : SYS :

System programming language

 

System programming language

System programming languages (otherwise known as applications languages) are statically typed, allow arbitrarily complex data structures, and programs written in them are compiled, and are meant to operate largely independently of other programs. Prototypical system programming languages are C and Modula-2. This term derives from John Ousterhout's division of high-level languages into "system programming languages" and "scripting languages". This distinction underlies the design of his language Tcl.

By contrast, scripting languages (or "glue languages") are dynamically typed or untyped, have little or no provision for complex data structures, and programs written in them (known as scripts) are interpreted. Scripts need to interact either with other programs (often as glue) or with a set of functions provided by the interpreter, as with the file system functions provided in a UNIX shell and with Tcl's GUI functions. Prototypical scripting languages are AppleScript, C Shell, DOS batch files, and Tcl.

Many believe that this is a highly arbitrary dichotomy, and refer to it as "Ousterhout's fallacy" or "Ousterhout's false dichotomy". While static-versus-dynamic typing, data structure complexity, and independent versus stand-alone might be said to be unrelated features, the usual critique of Ousterhout's dichotomy is of its distinction between compilation versus interpretation, since neither semantics nor syntax depend significantly on whether code is compiled into machine-language, interpreted, tokenized, or byte-compiled at the start of each run, or any mixture of these. Many languages may be either interpreted or compiled, depending on dialect and implementation (e.g. Lisp, Forth, UCSD Pascal, Perl, and Java). This makes compilation versus interpretation a dubious parameter in a taxonomy of programming languages.


NodeWorks boosts web surfing!
Page Returned in 0.166 seconds - HTML Compressed 69.2%

This article is from Wikipedia. All text is available
under the terms of the GNU Free Documentation License.
 GNU Free Documentation License
© 2008 Chamas Enterprises Inc.