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 ...
随机推荐
- hdu5672 尺取法
StringTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) Total Subm ...
- NYOJ 110 剑客决斗
110剑客决斗 在路易十三和红衣主教黎塞留当权的时代,发生了一场决斗.n个人站成一个圈,依次抽签.抽中的人和他右边的人决斗,负者出圈.这场决斗的最终结果关键取决于决斗的顺序.现书籍任意两决斗中谁能胜出 ...
- Gora官方文档之二:Gora对Map-Reduce的支持
参考官方文档:http://gora.apache.org/current/tutorial.html 项目代码见:https://code.csdn.net/jediael_lu/mygoradem ...
- jquery 自动实现autocomplete+ajax
来公司也差不多一个半月了,一直做点小东西,现在在做公司的出货系统,也只是做来锻炼锻炼的. 好了 不废话了 下面是实现 jquery插件 autocomplete+ajax 自动实现.也是刚学,勿喷. ...
- linux 安装中文支持包及中文字符集配置
由于某些原因系统安装时未安装中文支持,导致后续应用出现中文方块乱码现象,解决方法很简单,当然不是重装,只需以下三步即可搞定. 1.安装中文包: #yum -y groupinstall chinese ...
- 正则匹配<img src="xxxxxx" alt="" />标签的相关写法
1.(<img\ssrc[^>]*>) 2.content.replace(/<img [^>]*src=['"]([^'"]+)[^>]*&g ...
- [TYVJ] P1005 采药
采药 背景 Background NOIP2005复赛普及组第三题 描述 Description 辰辰是个天资聪颖的孩子,他的梦想是成为世界上最伟大的医师.为此,他想拜附近最有威望的医师为师.医师 ...
- [TYVJ] P1001 第K极值
第K极值 背景 Background 成成第一次模拟赛 第一道 描述 Description 给定一个长度为N(0<n<=10000)的序列,保证每一个序列中的数字a[i]是小于 ...
- #define XBYTE ((unsigned char volatile xdata *) 0)
今天在看别人的CAN总线程序的时候,突然发现了这么一句宏定义:#define XBYTE ((unsigned char volatile xdata *) 0),以前都没注意到过.后来查了一下,发现 ...
- 可以让javascript加快的脚本(收藏了)
<?php ob_start('ob_gzhandler'); header("Cache-Control: public"); h ...