Read-Eval-Print Loop. interactive mode とも。意味合いは違うが、同じ機能を持つものをShellと呼んでいる場合も多い。
Perl
いつもの
list
perl -ne 'print eval, "\n> "'
scalar
perl -ne 'print eval. "\n"' perl -pe '$_=eval'
perl debugger
perl -de 0
Shell::Perl
cpan> install Shell::Perl $ pirl pirl @> @a=(1, 2, 3); (1, 2, 3) pirl @> :set ctx $ pirl $> (1, 2, 3) Useless use of a constant in void context at (eval 17) line 1. 3 pirl $> :help
表示形式は以下から選べる。
pirl $> :set out [D|DD|DDS|Y|P] D : Data::Dump DD : Data::Dumper DDS : Data::Dump::Streamer Y : YAML P : Plain
Data::Dumpではうまく日本語を表示できないようだが。
pirl @> "日本語" "\xE6\x97\xA5\xE6\x9C\xAC\xE8\xAA\x9E"
Devel:PERL
cpan> install Devel::REPL # apt-get install libdevel-repl-perl $ re.pl
起動がもたつく…
$ my @a = (1, 2, 3);
$ARRAY1 = [
1,
2,
3
];
$ {
> my @a = (4, 5);
> print "@a\n";
> }
4 5
1
$ print "@a\n"
4 5
1
$ exit
psh
csh, bash といったような Unix shell としての perl shell.