[Anthy-dev 2292] Re: r5rs: SigSchemeへの要望

Back to archive index

Jun Inoue jun.l****@gmail*****
2005年 8月 26日 (金) 15:38:19 JST


On Fri, 26 Aug 2005 14:33:17 +0900
Kazuki Ohta <mover****@hct*****> wrote:

> マクロの名前を変更するという事になると思います。custom的にSCM_AS_CONSと
> いう名前にしようかと思っているのですが、ピンと来ますかね?

一応賛成。そもそもこれらのマクロは accessor マクロの定義部ぐらいでしか使
わないので、多少わかりにくくてもいいはず。SCM_CAST_TO_CONS でもいいかも。


> > ・(cond) ? SCM_TRUE : SCM_FALSE を簡略化するためのSCM_BOOLIZE(仮)
> >   マクロの導入
> これは反対です。
> [...]
> いかがでしょう?

私も同様の理由で反対です。


> 懸案事項。
> ・tail recursionが起こった場合のback traceをどうするか
> 現在はtrace_frameをScmOp_evalの先頭でスタック上に確保しているが、現状末尾
> 再帰が起こった場合にはtrace_frameを作成していない。ただ、mallocを使って確保
> するとオーバーヘッドが大きそう。最初に配列を動的に確保しておく?しかしその場合に
> は継続との兼ね合いが微妙になる。難しい。

これは多分サポート不可能です。R5RS によれば、というか一般的に、 "proper
tail recursion" の定義は末尾呼び出しがメモリを消費しないことですから、そ
の末尾呼び出しの情報をどこかに保存していると、CPS なコードなんかがメモリ
不足で実行できなくなります。

-- 
Jun Inoue
jun.l****@gmail*****



Anthy-dev メーリングリストの案内
Back to archive index