最初に
perl6には非常に興味があったものの、なかなか手を出せずにいた私です。
今回、遂にperl6に手を出したので、その導入からhello worldまでを書いてみたいと思います。
# このネタ、何番煎じなんだろうか
## そんなのキニシナイ
NOTE: 以下の情報は、記事作成(2012-12-23)当時のものです。
最新の情報とは異なる可能性がありますので、ご注意ください。
作業環境
- OS: Vine Linux 6.1
- CPU: AMD Phenom(tm) II X4 955
- MEM: 4GByte
- GCC: 4.7.2
- Perl5: 5.12.3
インストール
まずは、処理系を落としてきます。
今回導入するのは、Rakudoです。
まずは公式ページへ行って、ダウンロードについて調べます。
トップページを見ると、2012-11版が最新のようです。
How to get Rakudo Perl 6のページを見ながら、インストール作業を進めます。
まずはお気に入りの端末を開いてください。
PCを再起動して、text modeでログインしても構いません。
やりやすいほうで構いません。
なお、git、make、gcc、Perl5.8以降、ICU4Cがインストール済であることを前提とさせて頂きますので、あしからずご了承ください。
標準的なlinuxディストリビューションならば、最初から揃っているはずですので、問題ありませんよね。
閑話休題。
さて、まずは作業ディレクトリを作ります。
今回は適当に、次のようにして作成しました。
$ mkdir ~/perl6.rakudo/
$ cd ~/perl6.rakudo/
続いて、ソースコードをcloneします。
$ time git clone git://github.com/rakudo/rakudo.git
15秒程度でcloneが終了しました。
cloneすると、作業ディレクトリ以下にrakudoというディレクトリができます。
$ ls
rakudo/
$ cd rakudo/
$ ls
CREDITS Configure.pl INSTALL.txt LHF.markdown LICENSE README VERSION blib/ docs/ dynext/ lib/ src/ t/ tools/
こんな感じになりました。
続いてmakeに入ります。
先に言っておきますと、makeは得てして時間がかかりますが、はい、結構かかります。
ただしkernelをmakeするよりはかかりませんので、問題ありません。
まずはMakefileを作成します。
$ time perl Configure.pl --gen-parrot --gen-nqp
7分強程度で、問題なく終了しました。
2度目移行は、
$ time perl Configure.pl --with-parrot=./parrot/parrot --with-nqp=./nqp/nqp
とできるので、1秒かからずにMakefileを作成することができます。
さて、ではいよいよビルドします。
ドキドキしますね。
$ time make
$ time make install
5分弱で終了しました。
./perl6という実行可能ファイルが作成されているはずです。
また./install以下には、ドキュメントやら何やら色々と入っているようです。
make installとしてますが、パスの通った場所へのインストールは行われません。
そのせいで少しハマりました。
とまれ、今回の目的であるhello worldへ進みましょう。
hello world!を試してみる
さて、いよいよperl6を動かしてみたいと思います。
$ pwd
/home/kamichidu/perl6.rakudo/rakudo/
$ ./perl6say 'hello world!';
hello world!
exit;
感動しますね。
今までperlshを使っていたりしましたが、普通にインタラクティブなシェルが使えるとは。
続いてファイルから実行させてみます。
\#!~/perl6.rakudo/rakudo/perl6
say q/hello world!/;
1;
$ ./perl6 ./hello_world.pl
hello world!
ちゃんと出力されましたね。
感動ですね。
最後に
つまらない記事ではございましたが、最後までお付き合い頂きありがとうございました。
これからperl6を勉強していきたいと思います。
この記事でやってみたように、 perl6の導入は非常に簡単なので、みんなどんどん導入して遊べばいいと思います。