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

SICP : Ex2.4

Concurrent Cleanでは表現できないと思って飛ばしていた問題なのだけれど、ここ最近の記事の内容と関連すると思ったので、Schemeで書いておくことにします。 問題は、cons, car, cdrを特別なデータ型を仮定せずに、手続きだけで作り出すことができるというこ…

純粋型推論言語

OCamlにも「純粋」という冠をつけたいなあと思って、上の言葉を作ってみました。 最近は、補助的に型推論を持つ言語も登場してきたことだし、そういう言葉があってもいいかもしれない。 純粋型推論言語 ml, OCaml, Haskell, Concurrent Clean

教育

先日、会社で、新人教育で最低限やっておいて欲しいプログラミングの基礎知識について意見を聞かれて、まあ、そのときはそれなりに話したのだけれど、もうちょっと考えてみた。 計算量とデータ構造 メモリ管理 モジュール化(とインターフェースと型システム…

素数リスト

そういえば、Concurrent Cleanでは、素数リストは面白い考え方と書き方で生成できるんですよね。 http://sky.zero.ad.jp/~zaa54437/programming/clean/CleanBook/part1/Chap3.html#sc27

再帰

[id:mimpoo:20060124#p2] 再帰に苦しんでいる人を発見。 再帰は「場合わけ」だと思えばわかりやすいんですよね。あるいは「数学的帰納法」とか。 例えば、Hello!をn回出力するプログラム… 手続き hello n について n=0の時 → 終わり n=kの時 → Helloを出力…

SICP : Ex1.38 : Concurrent Clean

積み残しの問題がいくつかあるので、順番に片付けていきます。 Ex1.38 オイラー展開で自然対数の底 e を求める問題。 cont_frac n d j = cont_frac n d 0 where cont_frac n d k | k == j = 0.0 = (n k) / ((d k) + (cont_frac n d (k+1))) Start = 2.0 + co…

晴れ

昨日の記事にメモ化版を追加