1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Perl6Advent Calendar 2012

Day 22

Perl6導入記

Last updated at Posted at 2012-12-22

最初に

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/
$ ./perl6

say 'hello world!';
hello world!
exit;

感動しますね。
今までperlshを使っていたりしましたが、普通にインタラクティブなシェルが使えるとは。

続いてファイルから実行させてみます。

hello_world.pl
\#!~/perl6.rakudo/rakudo/perl6

say q/hello world!/;

1;

$ ./perl6 ./hello_world.pl
hello world!

ちゃんと出力されましたね。
感動ですね。

最後に

つまらない記事ではございましたが、最後までお付き合い頂きありがとうございました。
これからperl6を勉強していきたいと思います。
この記事でやってみたように、 perl6の導入は非常に簡単なので、みんなどんどん導入して遊べばいいと思います。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?