[Anthy-dev 2240] Re: r5rs: 多値

アーカイブの一覧に戻る

Jun Inoue jun.l****@gmail*****
2005年 8月 19日 (金) 14:24:13 JST


On Thu, 18 Aug 2005 19:19:08 +0900
Kazuki Ohta <mover****@hct*****> wrote:

> 僕も完璧に多値のセマンティクスを理解していないのですが、とりあえずtest caseが通るよ
> うならそれで良いのでは無いでしょうか。

じゃぁそういうことで receive も書きました。extend_environment が外から呼
べないので回りくどい事をしてますが、env 関係の関数は static にするべきか
公開するべきか。とりあえず変更しませんでしたが。

でもマクロ実装してそれで作った方が良いかも知れませんね、こういう構文糖衣は。


> 色々考えている内にもう少し色々な型が欲しくなって参りまして...
> 
> ScmObj ScmOp_quote(ScmObj obj)
> 
> の様に、quoteにはenvが付かないようにしたいのですよね。逆にdefineではenvが必須です
> し。なのでUNEVALED_ARGをまた分割するかもしれません。しかし、こうしているとキリが無
> いので、おとなしく歴史に従った方が良いのかも...

種類を増やす方針は固まったんだから、名前は適当に決めちゃって種類も適当に
多めに選んで、コード書いた方がいいと思います。それで後から名前をゆっくり
検討したり、該当関数が 1 つや 2 つしか無い型を粛清したりした方が多分生産
的でしょう。(多分 siod と同じようなセットに落ち着きそうな予感がしますが)

;; ちなみに私はヤマケンさんの RAW がちょっと気に入りました。でも ARGS よ
;; りは LIST のほうが良いと思います。FUNCTYPE0-5 からの類推で「引数に関
;; する情報である」事は名前に含める必要は感じないので。
;; でもひとまずは適当に決めたらいいと思います。

型名は初期化と eval でしか使わないので変な名前でもどうにでもなりますが、
型そのものが無い今の状況は早めに改善した方がいいと思います。該当関数の少
ない型を削るときの変更は少なくて済みますが、call-with-values やら
receive みたいな、「他の型の方が自然に書けるけど無いからFUNCTYPE_R」とい
うのが増えると、これを後から全部直して回るのは大変ですので。

-- 
Jun Inoue
jun0****@users*****



Anthy-dev メーリングリストの案内
アーカイブの一覧に戻る