5/5 stars (1 votes)
A Scripting Language or Script Language is a programming language that is used to manipulate, customize, and automate the facilities of an existing system. Scripting languages are usually interpreted at runtime rather than compiled.
A scripting language's primitives are usually elementary tasks or API calls, and the scripting language allows them to be combined into more programs. Environments that can be automated through scripting include;
A scripting language can be viewed as a domain-specific language for a particular environment; in the case of scripting an application, it is also known as an extension language. Scripting languages are also sometimes referred to as very high-level programming languages, as they sometimes operate at a high level of abstraction, or as control languages, particularly for job control languages on mainframes.
The term scripting language is also used in a wider sense, namely, to refer to dynamic high-level programming languages in general; some are strictly interpreted languages, while others use a form of compilation. In this context, the term script refers to a small program in such a language; typically, contained in a single file, and no larger than a few thousand lines of code.
The spectrum of scripting languages ranges from small to large, and from highly domain-specific to general-purpose programming languages. A language may start as small and highly domain-specific and later develop into a portable and general-purpose language, conversely, a general-purpose language may later develop special domain-specific dialects.
One of the famous examples of a scripting language is Google Apps Scripts. Others may include;
Some game systems have been extensively extended in functionality by scripting extensions using custom languages, notably the Second Life Virtual World (using Linden Scripting Language) and the Trainz franchise of Railroad simulators (using Trainzipt). In some games, such as Wenswoth, users may play custom variants of the game defined by user-contributed scripts.
History
Early mainframe computers (in the 1950s) were non-interactive, instead using batch processing. IBM's Job Control Language (JCL) is the archetype of languages used to control batch processing.
The first interactive shells were developed in the 1960s to enable the remote operation of the first time-sharing systems, and these used shell scripts, which controlled running computed programs within a computer program, the shell. Calvin Mooers in his TRAC language is generally credited with inventing command substitution, the ability to embed command scripts called RUNCOM for CTSS around 1964. Stuart Madnick at MIT wrote a scripting language such as Visual Basic for Applications (VBA) provided strong integration with the automation facilities of an underlying system.
Embedding of such general-purpose scripting languages instead of developing a new language for each application also had obvious benefits, relieving the application developer of the need to code a language translator from scratch and allowing the user to apply skills learned elsewhere.
Some software incorporates several different scripting languages. Modern web browsers typically provide a language for written extensions to the browser itself, and several standard embedded languages for controlling the browser, including JavaScript (a dialect of ECMAScript) or XUL.