RSS

PerlのREPLいろいろ

PerlのREPLをちょっと調べる。

    付与されたタグ:
  • Perl

REPLとはRead Eval Print Loopの略。Pythonの対話モード・irb・Lispの対話モードなどである。ちょろっと探してみたら次のようなのがみつかった。

  • Devel::REPL (re.pl)
  • App::REPL (iperl)
  • Shell::Perl  (pirl)
  • perlconsole (perlcosole)

括弧内が付属のコマンドである。iperlとpirlは評価の表示がちょっと詳しい。具体的にはクラスインスタントを評価したときにHASHとか愛想のない内容ではない。

Devel::REPL

 

$ use CGI
 
$ CGI->new
$CGI1 = CGI=HASH(0x3b2a0f0);

 

App::REPL

$ iperl
App::REPL _ use CGI
App::REPL _ CGI->new
$VAR1 = bless( {
'.parameters' => [],
'use_tempfile' => 1,
'.charset' => 'ISO-8859-1',
'.fieldnames' => {},
'param' => {},
'escape' => 1
}, 'CGI' );
App::REPL _

Shell::Perl

$ pirl
pirl @> use CGI @var = (); pirl @> CGI->new @var = ( bless( { '.parameters' => [], 'use_tempfile' => 1, '.charset' => 'ISO-8859-1', '.fieldnames' => {}, 'param' => {}, 'escape' => 1 }, 'CGI' ) ); pirl @>

perlconsole

Perl> use CGI
Perl> CGI->new
CGI=HASH(0x253d368)
このような表示になってiperlとpirlがわかりやすい。

追記

perl -de 0 という話も飛んできた。