Next: srfi.217 - 整数集合, Previous: srfi.215 - 中央ログ交換局, Up: ライブラリモジュール - SRFI [Contents][Index]
srfi.216 - SICP用ライブラリこのモジュールは、『計算機プログラムの構造と解釈』(SICP)の練習課題を実装するための いくつかのユーティリティを提供します。
このモジュールを提供する主な目的は、このモジュールに依存している既存のコードの移植性のためです。 SICPの課題をGaucheで解きながら学んでいる場合は、 Gauche-compat-sicp拡張 (https://github.com/shirok/Gauche-compat-sicp)を使うことをおすすめします。 Gauche特有の問題への対応が入っています。
[SRFI-216]{srfi.216}
過去のある時点から、時間経過によって単調増加する正確な整数を返します。
具体的な値に意味はありませんが、二つのruntime呼び出しの差を取ることで
相対的な時間経過を比較することができます。
[SRFI-216]{srfi.216} nは正の実数でなければなりません。n未満のランダムな非負整数を返します。
nが正確数なら、正確な整数が返ります。 そうでなければ不正確な整数が返ります。
[SRFI-216]{srfi.216} 与えられたthunkを、スレッドを使って並列に実行します。 全てのthunkの実行が終了したら、未定義の値を返します。
[SRFI-216]{srfi.216}
引数は変更可能なペアでなければなりません。
そのcarが#fなら、それを#tに変えて#fを返します。
そうでなければ引数は変更せずに#fを返します。
この操作はアトミックに行われます。
[SRFI-216]{srfi.216}
(cons a (delay b))へと展開されます。car部分にあたる
aは積極的に評価されることに注意してください。
これはutil.streamのstream-consと異なります
(Stream primitives参照)。SICPはマクロを陽に使わないので、
このオペレータがプリミティブとして用意されている前提で書かれています。
[SRFI-216]{srfi.216}
空のストリームを表すシングルトンインスタンスです。
これは、次のstream-null?と一緒に使われなければなりません。
util.streamのstream-nullと互換性はありません
(Stream primitives参照)。
[SRFI-216]{srfi.216}
objがthe-empty-streamであれば#tを、
そうでなければ#fを返します。
これはutil.streamのstream-null?とは異なります
(Stream primitives参照)。
Next: srfi.217 - 整数集合, Previous: srfi.215 - 中央ログ交換局, Up: ライブラリモジュール - SRFI [Contents][Index]