分享

把Swift用作脚本语言

 quasiceo 2016-07-13

把Swift用作脚本语言

2014-08-02 21:58:26http://cocoa./blog/scripty-swift/--点击数:684

Swift是Apple开发的很酷的新语言。在看WWDC介绍Swift的时候,看到它有一个REPL交互界面,我当时就在想,Swift难道能像脚本语言一样用?如果可以的话,那岂不是一门非常有潜力的脚本语言了(当然,就跨平台而言,Swift完败)?性能优异,语法现代,REPL,还有Playground,简直无敌了!所以下载完Xcode 6 beta 1,我就试了一个简单的脚本:


#!/usr/bin/env xcrun swiftprintln("Hello Swift.")

如果装过命令行工具包,可以直接这么写:


#!/usr/bin/env swiftprintln("Hello Swift.")

保存为任意文件名,比如:hello.swift。然后在命令行执行:


chmod +x hello.swift./hello.swift

执行./hello.swift的时候,CPU飚了一下,终端光标停顿了一下之后,打印出了Hello Swift.。然后我就发现和脚本的同级目录下多了一个可执行文件,名为hello。敢情执行这段“脚本”实际上是编译了脚本,然后再执行编译的结果啊。当时我没有深究,只想着照这样,用Swift写脚本是不行了。然后我就把这件事丢下了。

直到最近,我发现,原来可以给Swift加上一个参数,就可以不经过编译的步骤,直接执行“Swift脚本”。如下:


#!/usr/bin/env xcrun swift -iprintln("Hello Swift.")

这样,就不会经过编译的步骤,直接执行Swift了。执行./hello.swift的时候,也没有了编译产生的卡顿。关于“脚本”的性能我没有深究,不过无论如何,作为脚本语言来用,应该是可以胜任的。

这样看来,以后有些简单的实用脚本可以用Swift来写了。当然,要成为一门合格的“脚本语言”,Swift还有很长的路要走(当然,很可能Swift根本不会往那个方向去),不过即便如此,Swift的狂热粉丝们会不会慢慢地用Swift来部分替代Shell,Perl,Python,Ruby这些脚本语言写的小程序呢?拭目以待开源社区给我们带来新的惊喜。

补充:

在执行Swift“脚本”之前,你可能要把Xcode 6 beta作为首选开发工具:


sudo xcode-select -s /Applications/Xcode6-Beta?.app

将上面的?替换为您实际在使用的beta版的版本号。Xcode 6正式发布后,直接用Xcode.app就可以了。

(全文完)

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多