什么是脚本语言

什么是脚本语言

什么是脚本语言


脚本语言是为了缩短传统的编写-编译-链接-运行过程而创建的计算机编程语言 。虽然许多脚本语言都超越了计算机简单任务自动化的领域,成熟到可以编写精巧的程序,但仍然还是被称为脚本 。几乎所有计算机系统的各个层次都有一种脚本语言 。包括操作系统层,如计算机游戏,网络应用程序,文字处理文档,网络软件等 。
在许多方面,高级编程语言和脚本语言之间互相交叉,二者之间没有明确的界限 。一个脚本可以使得本来要用键盘进行的相互式操作自动化 。一个Shell脚本主要由原本需要在命令行输入的命令组成 , 或在一个文本编辑器中,用户可以使用脚本来把一些常用的操作组合成一组序列 。主要用来书写这种脚本的语言叫做脚本语言 。很多脚本语言实际上已经超过简单的用户命令序列的指令,还可以编写更复杂的程序 。
什么是脚本语言脚本语言是为了缩短传统的编写-编译-链接-运行(edit-compile-link-run)过程而创建的计算机编程语言 。它的命名起源于一个脚本“screenplay”,每次运行都会使对话框逐字重复 。早期的脚本语言经常被称为批量处理语言或工作控制语言 。
一个脚本通常是解释执行而非编译 。脚本语言通常都有简单、易学、易用的特性,目的就是希望能让程序员快速完成程序的编写工作 。而宏语言则可视为脚本语言的分支,两者也有实质上的相同之处 。
脚本语言有哪些脚本语言:脚本语言又被称为扩建的语言,或者动态语言,是一种编程语言,用来控制软件应用程序,脚本通常以文本(如ASCII)保存,只在被调用时进行解释或编译 。
语言分类:
Shell脚本:此类脚本用于自动化工作控制,即启动和控制系统程序的行为 。大多的脚本语言解释器也同时是命令行界面,如Unix shell和MS-DOS COMMAND.COM 。其他如AppleScript,可以为系统增加脚本环境,但没有命令行界面 。具体分类有:
4NT
AppleScript
ARexx (Amiga Rexx)
bash
csh
DCL
JCL
ksh
Cmd.exe batch (Windows, OS/2)
Command.com batch (DOS)
REXX
tcsh
sh
Winbatch
Windows PowerShell
Windows Script Host
zsh
GUI脚本:GUI出现带来一种专业的控制计算机的脚本语言 。它在用户和图形界面,菜单,按钮等之间互动 。它经常用来自动化重复性动作 , 或设置一个标准状态 。理论上它可以用来控制运行于基于GUI的计算机上的所有应用程序,但实际上这些语言是否被支持还要看应用程序和操作系统本身 。当通过键盘进行互动时,这些语言也被称为宏语言 。
具体分类有:
AutoHotkey
AutoIt
Expect
应用程序定制:许多大型的应用程序都包括根据用户需求而定制的惯用脚本语言 。同样地,许多电脑游戏系统使用一种自定义脚本语言来表现NPC(non-player character,non-playable character,non-player class)和游戏环境的预编程动作 。此类语言通常是为一个单独的应用程序所设计 , 虽然它们貌似一些通用语言(如QuakeC, modeled after C),但它们有自定义的功能 。具体分类:
Action Code Script
ActionScript
AutoLISP
BlobbieScript
Emacs Lisp
Game Maker Language
HyperTalk
IPTSCRAE
IRC script
Lingo
Maya Embedded Language
mIRC script
NWscript
QuakeC
UnrealScript
Visual Basic for Applications
Vbscript
ZZT-oop
web编程脚本:应用程序定制的脚本语言中有一种重要的类别 , 用于提供WEB页面的自定义功能 。它专业处理互联网通信,使用网页浏览器作为用户界面 。当然,大多现代WEB编程语言都比较强大可以做一些通用编程 。具体分类:
ColdFusion (Application Server)
Lasso
Miva
SMX
IPTSCRAE-一些网络开发团队用于创建论坛的工具
文本处理语言:处理基于文本的记录是脚本语言最早的用处之一 。如Unix's awk最早是设计来帮助系统管理员处理调用UNIX基于文本的配置和LOG文件 。PERL最早是用来产生报告的,现在它已经成了全面成熟的语言 。
具体分类:
Awk
Perl
sed
XSLT
通用动态语言:一些语言 , 比如Perl,从一门脚本语言发展成了更通用的编程语言 。由于“解释执行,内存管理,动态”等特性,它们仍被称为脚本语言 。但它们已经用于应用程序编写,用户也不把它们看作脚本语言 。
APL
Dao
Dylan
Groovy
Lua
MUMPS (M)
newLISP
Nuva
Perl
PHP
Python
Ruby
Scheme
Smalltalk
SuperCard
Tcl (Tool command language)
程序语言:少数的语言被设计通过嵌入应用程序来取代应用程序定制的脚本语言 。开发者(如使用C等其它系统语言)包入使脚本语言可以控制应用程序的hook 。这些语言和应用程序定制的脚本语言是同种用途,但优点在于可以在应用程序之间传递一些技能 。
具体分类:
Ch (C/C++ interpreter)
Dao
ECMAScript 亦称 DMDScript, Javascript, JScript
GameMonkeyScript
Guile
ICI
Lua
RBScript (REALbasic Script)
Squirrel
Tcl
Z-Script
Javascript直到现在仍然是网页浏览器内的主要编程语言,它的ECMAScript标准化保证了它成为流行的通用嵌入性语言 。Tcl作为一种扩展性语言而创建 , 但更多地被用作通用性语言,就如同Python, Perl, Ruby一样 。Q语言是在Vbscript的基础上发展起来,专用于按键精灵系列产品,成为一门更接近“汉语”习惯的脚本语言 。
BeanShell (scripting for Java)
CobolScript
Escapade (server side scripting)
Euphoria
F-Script
Ferite
Groovy
Gui4Cli
Io
KiXtart
Mondrian
Object REXX
Pike
Pliant
REBOL
ScriptBasic
Shorthand Language
Simkin
Sleep
StepTalk
Visual DialogScript
【什么是脚本语言】

    推荐阅读