perl6之'Hello World'
安装完perl6之后,当然是要写一下Hello World了。
因为perl6的脚本一般都很短小,所以用不着很笨重的IDE之类的东西,我们用VIM,sublime text这种小型的编辑器
来开始perl6的学习之旅就可以了
首先打开你的编辑器新建一个文件,命名为helloworld.pl,输入下面的代码
#!/usr/bin/perl6 use v6; #这是一行注释 say "Hello World."; # "Hello World.".say;
# "Hello World.".say(); #`( 这是多行注释
注释以#加上`打头 `就是英文状态下的tab键上面那个键
这里的()可以替换成{}[]等等可以成对的括号
)
保存之,打开一个终端cd到 helloworld.pl 所在的目录,执行
chmod +x helloworld.pl
然后执行
./helloworld.pl
将会输出hello world,结果如图

简单的讲一下这个小小的程序,第一行
#!/usr/bin/perl6
便是雷打不动的脚本第一行 学名叫Shebang,关于这个东西可以参考wikipedia(如今这个都要爬梯子。。。)
表示脚本执行的时候会调用/usr/bin/perl6这个脚本解释器来执行,其实也可以不写这个东西,但是这样的话
执行perl6脚本的时候需要这样执行
perl6 helloworld.pl
程序的第三行
use v6;
代表程序我们的程序要使用某一个模块或者开启一个标志,比如perl5的时候一般开头是
use strict;
因为perl5的变量可以不用定义直接使用,加上use strict;这个之后,必须用my操作符来
定义变量才可以使用,否则就会报变量不在作用域的错误
而use v6代表我们要使用perl6的v6模块,它含有好几部分,当然在这里没什么实际的作用
第五行是一行单行注释,不多说了,perl5同样支持这种注释,然而perl6增加了多行注释
第十二行就是perl6的多行注释#`加上一对括号就可以了。。
第七行
say "Hello World.";
表示把"Hello Wolrd"输出到屏幕上,并自动换行,于是我们输出的内容后面会有一个换行符
其实按照perl6的方式应该是这样写
"Hello Wolrd.".say;
或者是
"Hello Wolrd.".say();
这三种写法都可以在屏幕上输出一行Hello World.
第一种写法是perl5的扩展写法,perl5本身是使用print输出的,say是高版本的扩展用法
第二种是perl6支持的新潮后缀写法,而因为say没有参数可以省略掉后面的括号,能省则省嘛。。。
Hello World到此为止。。。。
perl6之'Hello World'的更多相关文章
- 学习Perl6: slice fastq file
需求: 只获取 ath 物种的 hairpin 序列 文件格式如下所示,以>打头的为 header,紧跟的为序列[AUCG]+ (Perl5 regexp 格式) #!/usr/bin/env ...
- Backup: Array in Perl6
Array in Perl6 继承List,而List又继承Iterable,Positional,Cool ARRAY.pop ARRAY.shift ARRAY.push: VALUES ARRA ...
- Backup: Numbers in Perl6
Perl6 is a new language, not a improved version of Perl5. Perl6 inherits many good features from man ...
- perl6 JSON::Fast模块json解析的使用
关于JSON: JSON (JavaScript Object Notation)是一种轻量级的数据交换格式,语法简单,各种语言都有相应的库或者模块支持. 因为JSON非常小巧,解析起来又非常简单,我 ...
- perl6的介绍与下载编译安装
遇到perl6 一直想认真的学习一门脚本语言或者与之类似的语言,因为相对与c++/c来说,一些工作可以很方便的用脚本语言来解决,比如对于日志文件的处理,自动ftp上传. 也看过不少语言的介绍,比如py ...
- perl6 HTTP::UserAgent (2)
http://www.cnblogs.com/perl6/p/6911166.html 之前这里有个小小例子, 这里只要是总结一下. HTTP::UserAgent包含了以下模块: --------- ...
- Perl6 必应抓取(2):最终版
use HTTP::UserAgent; use URI::Encode; Firefox/52.0>); my $bing_url = 'http://cn.bing.com/search?q ...
- Perl6多线程3: Promise start / in / await
创建一个Promise 并自动运行: my $p = Promise.start({say 'Hello, Promise!'}); 如果把代码改成如下, 我们会发现什么也没打印: ;say 'Hel ...
- Perl6多线程2: Promise new/keep/bread/status/result
来源于个人理解的翻译. 创建一个 promise: my $p = Promise.new; 可以打印运行 的Promise 状态: my $p = Promise.new(); $p.then({s ...
随机推荐
- C#检测串口被拔掉等一些触发事件合集
// //设备异常重载 // protected override void WndProc(ref Message m) { if (m.Msg == 0x0219) {//设备被拔出 if (m. ...
- (原)torch7中添加新的层
转载请注明出处: http://www.cnblogs.com/darkknightzh/p/6069627.html 参考网址: http://torch.ch/docs/developer-doc ...
- Oracle11g R2学习系列 之八高级数据类型
所谓的高级数据类型,就是大数据类型,即BCNB(助记词:BC牛逼)+XML数据类型. B:blob,用来存储可变长度的二进制数据. C:clob,主要用来存储可变长度的字符型数据,也就是其他数据库中提 ...
- select p.id, name,ROW_NUMBER() over(PARTITION by name order by p.id) names from person p
select p.id, name,ROW_NUMBER() over(PARTITION by name order by p.id) names from person p
- [Codeforces Round #186 (Div. 2)] B. Ilya and Queries
B. Ilya and Queries time limit per test 2 seconds memory limit per test 256 megabytes input standard ...
- 转:helloworld:一个完整的WCF案例
原文地址:http://blog.csdn.net/mane_yao/article/details/5852845 WCF的ABC: A代表Address-where(对象在哪里)B代表Bindin ...
- linux网址
1. 上海爱墨电子科技有限公司 http://www.shaimo.cn/showproduct.asp?piccat_id=196&pic_id=780 2. http://lxr.free ...
- 2013第49周一jsp标签
2013第49周一jsp标签 今天在调试一些前台页面上的问题,在处理structs标签.jstl标签时遇到了些麻烦,为了调用后台数据字典中的类方法,开始在<c:forEach>中尝试怎么样 ...
- Fish’s mission
Fish’s mission 也就是求一个坐标到各个食堂的距离和最小,随机化做应该也是可以的.标程用的方法是利用单调性,不断尝试四个方向,二分的方法做的.实际上就是蚁群退火算法. #include & ...
- SQL省市区三级表结构
-- 表的结构 areaDROP TABLE area;CREATE TABLE area ( id int NOT NULL , areaID int NOT NULL, area va ...