8

Python は、コンソールに数行のコードを送信することで小さなコード スニペットを評価できる対話型インタープリターを提供します。同様の機能を持つツール (たとえば、矢印キーでアクセスできる履歴を含む) が Perl にも存在するかどうか疑問に思っていましたか?

あらゆる種類の解決策があるようですが、良い推奨事項が見つからないようです。つまり、多くのツールが言及されていますが、人々が実際に使用しているツールとその理由に興味があります。では、標準の perl デバッグ ( ) を除いて、何か良い推奨事項はありますperl -d -e 1か?

以下は、私が見たいくつかの興味深いページです。

4

4 に答える 4

7
   perl -d -e 1

完全に適しています。私は何年もの間それを使用してきました。しかし、それができない場合は、Devel::REPLをチェックしてください。

于 2013-05-29T16:09:10.420 に答える
6

perl -d -e 1コマンドライン履歴がないことが問題の場合は、インストールTerm::ReadLine::Perl時にデバッガーが使用するものをインストールする必要があります。

于 2013-05-29T18:14:55.027 に答える
4

この質問にはたくさんの答えがありますが、このトピックに 2 セント追加します。あなたがViMユーザーであれば、問題に対する私のアプローチは簡単ですが、他のエディターからも同様に実行できると思います。

  1. ViM を開き、コードを入力します。ファイルに保存する必要はありません。

  2. :w !perl評価用 (:w !COMMANDを実行して取得したプロセスにバッファーをパイプしますCOMMAND。この場合、強力なperlインタープリターです!)

  3. 出力を見てみましょう

このアプローチは、Perl だけでなく、あらゆるインタープリター言語に適しています。

Perl の場合、独自のモジュールを作成するときに非常に便利です。私の経験では、perlインタープリターはモジュールのリロードを拒否するためです (ロードが試行されて失敗した場合でも)。マイナス面としては、毎回すべてのコンテキストが失われるため、重い操作や遅い操作を行っている場合は、中間結果を保存する必要があります (一方、perl コンソールアプローチでは以前に計算されたデータが保持されます)。

式の評価だけが必要な場合 (これは perl コンソール プログラムのもう 1 つの使用例です)、別の良い代替方法は、perl -eコマンドから評価を確認することです。起動するのは速いですが、エスケープに対処する必要があります (この点については$'...'、Bash の構文がうまく機能します。

于 2015-09-17T11:28:47.377 に答える