Friday, January 11, 2008

Scripting Languages:-
Scripting languages, also called script languages, are programming languages that control applications. Scripts are executed directly from their source code, which are generally text files containing language specific markup. Thus, "scripts" are often treated as distinct from "programs", which execute independently from any other application.
The name "script" is derived from the written script of the performing arts, in which dialogue is set down to be spoken by human actors. Early script languages were often called batch languages or job control languages. Such early scripting languages were created to shorten the traditional edit-compile-link-run.
Types of scripting languages

1) Job control languages and shells

2) GUI Scripting

3) Application-specific languages

4) Web browser

5) Text processing languages

6) General-purpose dynamic languages

7) Extension/embeddable languages

In Detail Explanation:-

1) Job control languages and shells


A major class of scripting languages has grown out of the automation of job control, which relates to starting and controlling the behavior of system programs. Many of these languages' interpreters double as command line interfaces such as the Unix shell or the MS-DOS COMMAND.COM. Others, such as AppleScript, add scripting capability to computing environments lacking a command-line interface. Following are the examples

* 4NT
* AppleScript
* ARexx (Amiga Rexx)
* bash
* csh
* Ch (C Compatible shell)
* DCL (on OpenVMS)
* JCL
* JScript via Windows Script Host
* ksh
* cmd.exe (Windows NT, Windows CE, OS/2)
* COMMAND.COM (DOS, Windows 9x)
* REXX
* Macro Scheduler
* tcsh
* thinBasic
* sh
* VBScript via Windows Script Host
* Winbatch
* Windows PowerShell
* Windows Script Host
* zsh
* Jake

2) GUI Scripting


With the advent of Graphical user interfaces came a specialized kind of scripting language for controlling a computer. These languages interact with the same graphic windows, menus, buttons, and so on that a system generates. These languages are typically used to automate repetitive actions or configure a standard state. In principle, they could be used to control any application running on a GUI-based computer; but, in practice, the support for such languages depend on the application and operating system. Such languages are also called "macro languages" when control is through keyboard interaction

* AutoHotkey
* AutoIt
* Eggplant
* Expect
* thinBasic
* Automator

3) Application-specific languages

Many large application programs include an idiomatic scripting language tailored to the needs of the application user. Likewise, many computer game systems use a custom scripting language to express the programmed actions of non-player characters and the game environment. Languages of this sort are designed for a single application; and, while they may superficially resemble a specific general-purpose language (e.g. QuakeC, modeled after C), they have custom features that distinguish them.

* Action Code Script
* ActionScript
* AutoLISP
* BlobbieScript[1]
* Emacs Lisp
* Game Maker Language
* Hscript
* HyperTalk
* iMacros Web Browser Macro Language
* IPTSCRAE
* Linden Scripting Language
* Lingo
* LotusScript
* MATLAB
* MAXScript
* Maya Embedded Language
* mIRC Scripting Language
* NWscript
* Rhinoscript
* QuakeC
* UnrealScript
* Vim Scripting Language
* Visual Basic for Applications
* ZZT-oop

4) Web browser


An important type of application-specific scripting language is one used to provide custom functionality to web pages.

* JavaScript
* JScript
* VBScript
* Tcl

5) Text processing languages

The processing of text-based records is one of the oldest uses of scripting languages. Many, such as Unix's awk and, later, Perl, were originally designed to aid system administrators in automating tasks that involved Unix text-based configuration and log files. Perl is a special case -- originally intended as a report-generation language, it has grown into a full-fledged applications language in its own right.

* AWK
* Perl
* sed
* XSLT

6) General-purpose dynamic languages

Some languages, such as Perl, began as scripting languages but were developed into programming languages suitable for broader purposes. Other similar languages -- frequently interpreted, memory-managed, or dynamic -- have been described as "scripting languages" for these similarities, even if they are more commonly used for applications programming. They are usually not called "scripting languages" by their own users.

* APL
* Boo
* Dylan
* Ferite
* Groovy
* Io
* Lisp
* Lua
* MUMPS (M)
* newLISP
* Nuva
* Perl
* PHP
* Python
* Ruby
* S-Lang
* Script.NET
* Scheme
* Smalltalk
* SuperCard
* Tcl (Tool command language)
* thinBasic
* Revolution

7) Extension/embeddable languages

A number of languages have been designed for the purpose of replacing application-specific scripting languages by being embeddable in application programs. The application programmer (working in C or another systems language) includes "hooks" where the scripting language can control the application. These languages serve the same purpose as application-specific extension languages but with the advantage of allowing some transfer of skills from application to application.

* Ch (C/C++ interpreter)
* ECMAScript a.k.a. DMDScript, JavaScript, JScript
* EOS Scripting Language
* Falcon
* Ferite
* GameMonkeyScript
* Guile
* ICI
* Lua
* Pawn
* Python
* RBScript (REALbasic Script)
* S-Lang
* Squirrel
* Tcl
* Windows PowerShell
* Z-Script

0 comments: