[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RubyDCL



堀之内です。

# 予告編です。

配列のサイズのチェックすらまともに出来てない AdvancedDCL に業を
煮やして、下層から根本的に手を入れることにしました。具体的には、
RubyDCL レベルで、

 * 配列のサイズに関する引数を消す
 * 配列のサイズのチェックをする(複数ある場合はその間のコンシス
   テンシーもチェック)

とします。実際には、現状の RubyDCL の C プログラムはそのままにし
て、配列を引数とする関数だけ Ruby で書いたラッパーで置き換えます
(元の関数は名前を alias で変えて、ラッパーをその名前にする)。
ラッパーはスクリプト一発で自動生成です。実は、既に出来ていて、リ
リースを待つばかりです。そこで NArray-0.5.6 問題が出てきたのでち
と困りましたが、まあ、一応別個の問題ではあります。

さて、上記の変更により、勿論これまでの RubyDCL との互換性はなく
なります。配列サイズを表す引数がなくなりますので。しかし、これで
Segmentation Fault を最初から排除できるという大きなメリットがあ
りますし、何より、そのほうが使う側は絶対気持いいです。

既に全デモプログラムを書き換え、動作確認しました。100個以上あっ
たのを手作業で直しましたが、わかり易い変更だったのでやりやすく、
数時間で終りました。

# ということで、西澤君、すみませんがご承知下さい。

さらに目玉は、ドキュメントです。f77 版の web 上のドキュメントに
掛けるフィルターを作りました。これを使って、全マニュアルを 
RubyDCL の引数に合わせて書き換えたものが既に出来てます (つい先ほ
ど終った)。あとは、Ruby 版のためのイントロと注意事項をつけ加えれ
ば完成。


堀之内 武                    horinout@xxxxxx
京都大学宙空電波科学研究センター     611-0011 宇治市五ヶ庄