- System programming language
System programming languages (otherwise known as applications languages) are
programming language s that are statically typed, allow arbitrarily complexdata structure s, compiled, and meant to operate largely independently of other programs. Prototypical system programming languages are C andModula-2 . This term derives fromJohn Ousterhout 's division ofhigh-level language s into "system programming languages" and "scripting languages". This distinction is sometimes referred to asOusterhout's dichotomy ; it underlies the design of his languageTcl .By contrast, scripting languages (or "glue languages") are dynamically typed or untyped, and programs written in them (known as scripts) are
interpreted or sometimes byte-compiled. Scripts need to interact either with other programs (often as glue) or with a set of functions provided by the interpreter, as with thefile system functions provided in aUnix shell and with Tcl'sGUI functions. Prototypical scripting languages areAppleScript ,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" Fact|date=April 2007. 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 compiling versus interpreting, since neithersemantics norsyntax depend significantly on whether code is compiled intomachine language , interpreted,tokenized , or byte-compiled at the start of each run, or any mix of these. Many languages may be either interpreted or compiled, depending on dialect and implementation (e.g. Lisp, Forth, UCSD Pascal, and Java). This makes compiling versus interpreting a dubious parameter in a taxonomy of programming languages.The term system programming language is also (and perhaps more widely) used to mean "a language for
system programming ": that is, a language designed for writingsystem software as distinct fromapplication software . In contrast with application languages, such system programming languages typically offer more direct access to the physical hardware of the machine: an archetypical system programming language in this sense wasBCPL . The distinction between languages for system programming and applications programming became blurred with widespread popularity of C.System Programming Language or SPL is also the name of a specific language on the
HP 3000 computer series used for its operating systemHP Multi-Programming Executive and other systems software.
Wikimedia Foundation. 2010.