perl でインタラクティブなシェルを実現する perlsh

  http://d.hatena.ne.jp/secondlife/20060111/1136975310

  Term::ReadLine::Gnu に含まれている perlsh.

\Term-ReadLine-Gnu-1.15\eg

  にファイルがある.make install ではインストールされないので,手動でパスの通ったところに置く必要がある.

  似たようなことは,Perl のデバッグモードでもできるけど,perlsh の方が便利.

% perlsh
main[1]$ @ary = qw(1 2 3 4 5)
1
2
3
4
5
main[2]$ map { $_ * $_ } grep { $_ % 2 } @ary
1
9
25

  同じことを Perl のデバッグモードですると以下のような感じ.

% perl -de 1

Loading DB routines from perl5db.pl version 1.25
Editor support available.

Enter h or `h h' for help, or `man perldebug' for more help.

main::(-e:1):   1
  DB<1> @ary = qw(1 2 3 4 5)

  DB<2> foreach (@ary) { print $_, "\n" }
1
2
3
4
5

  DB<3> @ary2 = map { $_ * $_ } grep { $_ % 2 } @ary

  DB<4> foreach (@ary2) { print $_, "\n" }
1
9
25

- Term::ReadLine::Gnu
  http://search.cpan.org/~hayashi/Term-ReadLine-Gnu-1.15/Gnu.pm

- perlsh
  http://search.cpan.org/~hayashi/Term-ReadLine-Gnu-1.15/eg/perlsh

- perldebug - Perl debugging
  http://perldoc.jp/docs/perl/5.6.1/perldebug.pod