2006-01-08から1日間の記事一覧

余談ですよ

Haskellになぜfor文がないかに悩んでいる人がいるようだ。 [id:nskj77:20051228#1135779719] 答えは簡単。 再帰構文で書けるからだ。これは、ちゃんと末尾再帰を最適化する言語なら、どんな言語でも同じ。 sum n = sum_itr 0 n where sum_itr a 0 = a sum_it…

SICP : Ex1.35

これは、数列の不動点の近似値を求めるという問題。与えられた式から黄金比の近似値を求めた。

SICP : Ex1.28 (番外編:乱数ライブラリについて)

id:lethevert:20060108:p1 で定義した乱数ライブラリを使って回答したのですが、これを使って、参照透過性について多少考察します。 fast_prime_pという関数の内部では、*(Random Int)を生成して、値を取り出して、*(Random Int)を破棄して、取り出した値だ…

SICP : Ex1.28

これは、素数判定を確率的なテストを用いて行うという問題。fermat-testというテストが本編で解説されていて、問題では、miller-rabin-testというテストを使って書き直すことが求められた。

SICP : Ex1.19

これは、フィボナッチ数を行列を使って高速に計算するという問題。

Concurrent Clean : 乱数ライブラリ

id:lethevert:20051230:p1 id:lethevert:20060106:p1 MersenneTwisterは、遅延ストリームを使った擬似乱数の生成ライブラリだけれど、これを使うためには、乱数のシードを用意しなければいけないのですが、これを簡単に取得する方法がなかった。2005/12/30の…