你还不够了解的5个脚本语言(什么是脚本和脚本语言)

网友投稿 1089 2022-08-26

你还不够了解的5个脚本语言(什么是脚本和脚本语言)

你还不够了解的5个脚本语言(什么是脚本和脚本语言)

从操作系统到基本应用,从游戏到Web页面,脚本语言无处不在。脚本语言让忙碌的开发人员不再循环在"编译-测试-校订"周期里。有了脚本语言,开发者只需要"编辑-运行"。

你可能熟知 Perl, Python, VBA, JavaScript...今天,我们要来谈谈另外5个脚本语言,虽然你可能还不够熟悉,不过他值得一看。

Wren

class Wren {

flyTo(city) {

IO.print(“Flying to “, city)

}

}

Candle

CandleScript由一个叫Henry Luo的开发者开发,致力于处理任何分层数据。它将标记数据作为一个内置的数据类型并提供处理能力。

由于Candle是函数式编程,包括过程式编程,所以可以提供控制流语句。表达式也是函数式的。

function main() {

let var = 123;

"Outer var: " {var}

let var = 345;

"Inner var: " {var}

}

Fancy

Fancy灵感来自Ruby,Christopher Bertels开发。是对象之间的消息发送系统,与Objective-C 或 Smalltalk 相似,操作很简单。下面是计算斐波纳契数的示例:

class Fixnum {

def fib {

match self {

case 0 -> 0

case 1 -> 1

case _ -> self – 1 fib + (self – 2 fib)

}

}

}

15 times: |x| {

x fib println

}

Pikt

由 Robert Osterlund开发,Pikt为Problem Informant/Killer Tool的首字母缩写。是Linux和Unix系统的监视设置管理软件。代码。下面是一个脚本示例,写出crontab的变化:

crontab_change(u)

init

status =piktstatus

level =piktlevel

task "Report changes in (u) crontabs"

input proc "if [ -e =hstdir/log/(u).crontab.bak ];

then =diff =hstdir/log/(u).crontab.bak =hstdir/log/(u).crontab

else =cat =hstdir/log/(u).crontab 2>/dev/null; fi"

begin

doexec wait "=crontab -u (u) -l > =hstdir/log/(u).crontab"

rule

output mail $inlin

end

doexec wait "=mv =hstdir/log/(u).crontab =hstdir/log/(u).crontab.bak"

PPL

PPL是JVM的跨平台语言,生成.jar或.class文件。有Christian Neumanns开发,致力于提高java null安全性和稳定性。编译器检null pointer错误并将其标记为编译错误标记。其他的特性还有:Design by Contract、集成单元测试、默认不可变队形、静态类型等。这些功能都意味着在编译时间中检测更多错误。

他下面的示例显示了一个简单的输入/输出,包括集成单元测试:

command double_string

in string type:string end

out result type:string end

script

o_result = i_string & i_string // simply return twice the input string

end

test // start of test script

script

test "a" // call co_double_string with i_string = "a"

verify v_result =v "aa" // verify result is "aa"

test "foo"

verify result =v "foofoo"

end

end

end

end

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:CodeForces - 628D (数位dp)
下一篇:计算机学院大学生程序设计竞赛(2015’11)1008 游乐场
相关文章

 发表评论

暂时没有评论,来抢沙发吧~