Perlの対話モード
調べても情報古かったり、よく分からなかったり、うーん。
Perlの対話モード、なんて洒落たものは標準では存在しない
pythonとかirbとか涙ちょちょぎれるぐらい便利ですね。特にPythonの「デフォルトは対話なんだ」という姿勢には感服です。
ではPerlは?というお話ですが、ググると色々あるようではあります。
などなど。ググるとperlshの情報が多いようですが、結論から言うと、re.plというのが一番イマドキのようです(?)。re.plはDevel::REPLで入るらしいのでCPANから入れればよいのですが…
$ cpanm Devel::REPL ... $ re.pl Failed to load role: Devel::REPL::Plugin::LexEnv Can't locate Lexical/Persistence.pm in @INC ... $ cpanm Lexical::Persistence ... $ re.pl Failed to load role: Devel::REPL::Plugin::DDS Can't locate Data/Dump/Streamer.pm in @INC ... $ cpanm Data::Dump::Streamer ... $ re.pl Failed to load role: Devel::REPL::Plugin::MultiLine::PPI Can't locate PPI.pm in @INC ... (ぉぃぉぃ) $ cpnam PPI ... $ re.pl
依存関係解決が面倒なのが難点です。初心者に優しくない安定のPerlクオリティですね。しかも改行が色々おかしい。ヒストリも使えない。
少し調べた所、この症状はTerm::ReadLine::Perlを入れると直るという話があったで、入れてみます。
$ cpanm Term::ReadLine::Perl
すごく、いい感じになりました。キーバインドも効きます(Mac)。
もっとも、perl -de 0
でもヒストリとか効くようになったので、それでも十分かもしれません。ツールの選択肢の多さも(良くも悪くも)TMTOWTDIってことでしょうかね。