LLの利点の一つというのは、対話的に使えることでもある。
いやなブログ: SpiderMonkey で JavaScript のインタラクティブシェルJavaScript のコードをインタラクティブに動かせるツール (Ruby における irb のようなもの) が欲しいと以前から思っていたのですが、今日になってようやく SpiderMonkey のインタラクティブシェルをインストールしました。
たいていのLLが対話的に利用する手段を用意しているのだが、対話型インターフェースが組み込みのPythonを除くと以外と知られていないケースも多いのでここにまとめてみた。
言語 | コマンド | 終了 | コメント |
Perl | perl -de 1 | q | 実際にはデバッガ。 |
Ruby | irb | quit または Ctrl-D | ruby scriptでの実装 |
Python | python | Ctrl-D | 本体組み込み |
JavaScript | js | Ctrl-D | SpiderMonkeyの場合 |
Haskell | ghci または ghc --interactive | Ctrl-D | |
Emacs Lisp | Meta-X eval-expression ほか | Ctrl-X Ctrl-C | 別格:) |
Squeak | 環境そのもの | メニューから「終了」 | 別格:) |
Perl6 (Pugs) | pugs | Ctrl-D | なんかghciっぽい。"Loading Prelude... done."とかのたまうし。 |
PostScript (GhostScript) | gs -dNODISPLAY -q | Ctrl-D | これも立派なLL。「歪」のEntryより。 |
(TBs|Comments|Patches) Welcome!
Dan the Man with Too Many Languages to Speak
さて、同案多数ではありましょうが、EmacsLispの場合、M-x eval-hogehogeもたまに使いますが、*scratch* バッファを対話型インタフェースとして常用しています。それ以前に、Emacs(en)を使っている間は、対話的にEmacsLispを使っているわけで、「別格」という中に含意されていることかもしれませんが。