This page linked from [ CoverPage | InPerl:WebAccess ]

InPerl

履歴閲覧: 最新 2009/11/12 2007/12/14 2004/02/24 2004/02/18 2004/01/23 2004/01/22 2004/01/16 2004/01/07 2003/12/18 {2003/12/16[差分表示]} 2003/12/16 2003/12/13 2003/12/12


-inperl : 'an interactive interpreter perl'
+inperl : 'an interactive interpreter perl' (or 'INCHIKI-Perl')
 
 inperlは、すごくいいかげんに書いたPerl用のインタラクティブ・インタプリタです。
-pythonがインタラクティブにこちょこちょできるのがうらやましくなったので、へろっと書いてみました。
+inperlを使うと、対話的にperlを実行できます。
+pythonがうらやましくなったので、へろっと書いてみました。
 
-世の中にはもう少しましな実装がありそうな気もしますが、探すより書いた方が早そうだったので書いてしまいました。
+-dオプションで起動するperlのデバッガでも似たようなことができますが、もうちょっと便利なのが欲しいので書いています。
 
 @入手法
-@@ tar.gz archive
- http://white.niu.ne.jp/inperl/inperl-0.1.2.tar.gz
+@@ archive (tar.gz | zip)
+ http://white.niu.ne.jp/inperl/inperl-0.1.5.tar.gz
+ http://white.niu.ne.jp/inperl/inperl-0.1.5.zip
 @@ Anonymous cvs
 <pre>
   cvs -d:pserver:anonymous@cvs.niu.ne.jp:/home/cvs/cvsroot login
   cvs -d:pserver:anonymous@cvs.niu.ne.jp:/home/cvs/cvsroot co inperl
 

@使用許諾
とりあえず、YaPwやりすぎライセンス相当。

@使い方
-Perl5.6以降(?)で動くと思います。
+Perl5以降(?)で動くと思います。
起動すると'inperl> 'というプロンプトが出るので、適当にPerlの命令を入力してください。
適当にPerlでevalして、evalした結果を出力します。

-あらかじめYAMLモジュールとか入れておいてDumpとか使うと、幸せすぎて死ねます。
+引数を付けて起動すると、そのファイル名のファイルを読み込んで評価してから、プロンプトを表示します。

+
+@応用
+ * あらかじめYAMLモジュール入れてDumpとか使うと幸せになれます。
+ * ユニットテストとモジュール本体を同時に書いていく、というような使いかたに向いてます。
+ * WebAccess
+
@@inperl内部コマンド
evalしないでinperlが直接評価しちゃうコマンドについて。
- * #dump [filename]

+ * #dump [filename]
これまでに実行したコマンドを出力します。
filenameを指定した場合、そのファイルに書き出します。
指定しなかった場合はコマンドラインに出力します。
試しに実行したコードを残しておきたいときに便利です。
- * #clear

+ * #clear
#dump用のバッファの中身を消去します。
+ * #read filename
+ fileの中身を読み込んでq(...)という形に展開します。
+ '$file = #read targetfile' のようにして使います。
+ * #dir name
+ name で指定されたモジュール/オブジェクトの属するシンボルテーブルのkeyの一覧を出力
+ * #silent
+ evalした結果をprintしなくなります。
+ * #verbose
+ evalした結果をprintするようになります。
+ * (eval-line) #> file
+ その行をevalした結果をfileに書き出します。
+ * (eval-line) #>> file
+ その行をevalした結果をfileに追記します。
+ * #eval filename
+ ファイルを読み込んで評価します。

@履歴

+ * コメント行があったときのブロック認識を少しだけましにした。
+ * toolbox/WebAccess.inperl をレポジトリに追加。要threadsサポート。
+ * 内部コマンド追加: '#eval filename' (ファイルを読み込んで評価)
+ * 0.1.5 http://white.niu.ne.jp/inperl/inperl-0.1.5.tar.gz
+ * 内部コマンド '#last' 追加
+ * 引数ファイルの'__END__'以降を評価しないように変更
+ * 0.1.4 http://white.niu.ne.jp/inperl/inperl-0.1.4.tar.gz
+ * 内部コマンド '#>> [filename]'追加
+ * 内部コマンド '#> [filename]'追加
+ * 内部コマンド #silent 追加
+ * 内部コマンド #verbose 追加
+ * 0.1.3 http://white.niu.ne.jp/inperl/inperl-0.1.3.tar.gz
+ * nobreakオプション(引数ファイル評価がエラーしたときに終了しない)を追加
+ * 起動時の引数で指定されたファイルを読み込んで評価するようにした。
+ * 内部コマンド追加:'#read filename' (ファイルを読み込んでq()で囲った形に置換)
+ # `cat req`で同じ事ができることに後から気付く罠。