Pugs で Hello World!!


遊びで Pugs を使ってみてる。

以下は Hello World!! までのメモ。
結構前なので今はバージョンが違うかも。


ビルドするにはまず Haskellコンパイラ GHC がいるので入れる。

ソースからは入らなかったので、深追いせずにバイナリを入れる・・・
まったく知らない言語だし・・・よくわからんので。

wget http://www.haskell.org/ghc/dist/6.4.2/ghc-6.4.2-i386-unknown-linux.tar.bz
tar jxf ghc-6.4.2-i386-unknown-linux.tar.bz
cd ghc-6.4.2
./configure && make && sudo make install

apt でいれればよかったかも。


Parrot を使いたいので、これもインストール

wget http://search.cpan.org/CPAN/authors/id/L/LT/LTOETSCH/parrot-0.4.3.tar.gz
tar zxf parrot-0.4.3.tar.gz
cd parrot-0.4.3
perl Configure.pl && make && sudo make install

インストールはこんな感じでPerl5モジュールが使えるようにする。

wget http://search.cpan.org/CPAN/authors/id/A/AU/AUTRIJUS/Perl6-Pugs-6.2.11.tar.gz
tar zxf Perl6-Pugs-6.2.11.tar.gz
cd Perl6-Pugs-6.2.11
export PUGS_EMBED=perl5,parrot
export PARROT_PATH=/usr/local/src/parrot-0.4.3
perl Makefile.PL && make && sudo make install

えらい時間がかかるが無事終了。

$ pugs
   ______
 /\   __ \
 \ \  \/\ \ __  __  ______  ______     (P)erl6
  \ \   __//\ \/\ \/\  __ \/\  ___\    (U)ser's
   \ \  \/ \ \ \_\ \ \ \/\ \ \___  \   (G)olfing
    \ \__\  \ \____/\ \____ \/\_____\  (S)ystem
     \/__/   \/___/  \/___/\ \/____/
                       /\____/               Version: 6.2.11
                       \/___/    Copyright 2005, 2006 by Audrey Tang
--------------------------------------------------------------------
 Web: http://pugscode.org/           Email: perl6-compiler@perl.org

Welcome to Pugs -- Perl6 User's Golfing System
Type :h for help.

Loading Prelude... done.
pugs>

おおー。

pugs> "Hello World!!".say
Hello World!!
bool::true

おおおー。

pugs> "Hello World!!".reverse.lc.say
!dlrow olleh
bool::true

おおおおー。

Rubyっぽくなってきた。

ちょっとためした限りでは Perl5 のモジュールも問題なく使える。


Perl6 を仕事で使う日は来るんだろうか。

下位互換性を無視しているのでかなり先になるのかも。