yusuk****@cheru*****
yusuk****@cheru*****
2003年 10月 20日 (月) 23:46:53 JST
田畑です。 さすがに8杯ともキムチシェーキはあんまりなので、 半分ぐらいはほかの種類のでもいいんじゃないかと 思うのですが… んで、本題ですが、徳永さんの方針をうけてというわけでは ないのですがSchemeインタプリタを少しずつ改造していき たいと思いますので、その方向性を説明します。 #このMLには職業Schemerの方が複数いるような気がするので、恐縮 #しながら説明します。私なんかのレベルではちっともSchemeマニア #ではないです。 いま使っているSchemeインタプリタはsiodというもので、 gimp等で使われているコンパクトなものですが、要らない 機能もたくさん搭載されています。 今まで既に行った変更としては、 *三角関数などを除去した libmが不要になりました。 *fast save/loadの機能を消した *base64の関数を消した それなりに急いでやらないといけない変更としては libuim.soによる名前空間の汚染の解決があります。 eclipseとの相性が悪いというレポートももらってますので それなりに急ごうと思います。今、インタプリタが 二つのファイルのわかれているのを統合して関数や 変数にstaticを付けまくればだいぶ解決するはずです。 あとは *こまごまとした要らない関数を消す *数を扱うのにdouble型を使うのをやめる 現時点ではデフォルトでdouble型を使っていますが、 色々もったいないのでintに切替えようと思います。 *配列を消す そもそも使えなかったっぽくて、使えるようにするのは 手間で、かつ、誰も使っていないので消します。 *copy gcを消す siodでは初期設定でcopy gcとmark and sweepを選べるの ですが、メモリを食わないほうのmark and sweepを残して、 copyの方は消してしまおうと思います。 などを考えています その他妄想 *weak referenceが欲しい 特に巨大なテーブルを持つinput methodを読み込んで、 解放できないのはつらいです。 *tinyscheme (tinyscheme.sourceforge.net)にすり替える -- CHAOS AND CHANCE! Yusuke TABATA (yusuk****@cheru*****)