2006-09-03から1日間の記事一覧

GNU開発ツール http://www.oversea-pub.com/publications.htm

が届いた。

Concurrent Clean : マルチスレッドとグラフの共有

Cleanでマルチスレッドプログラミングを実装するに置いては、気になるのがグラフの共有。 一見、純粋関数型言語なので全部immutableだからいいじゃん、と思うかもしれないが、Erlangのようにeagerに評価しないので、あるグラフが未評価であった場合に、複数…

fold, pack, instantiate

Recursive Type : fold, unfold Existential Type : pack, unpack Universal Type : instantiate という用語の対応。

Haskell : モナドの実行順序は何によって規定されているのだろうか?

[id:sshi:20060903:p3]より。 私も、bind(>>=)の実装が実行順序を規定していると思います。 http://www.geocities.jp/lethevert/softwares/clean/gettingStarted19.html 上で考察していますが、bind(>>=)で引数を正格評価しないと、意図とは逆の順に評価され…

L.L.Ring

でプレゼント引き換えでもらったボールが、飼猫の遊び道具になっている。 昔は、あまりボール大のものに興味を持たない猫だったのだけれど、最近はそういうものも興味を持つようになったらしい。

Concurrent Clean : CleanJ : ccall

Directoryモジュールを移植するにあたって、ccallというABCマシン命令の仕様を調査中。 ccall Cの関数名 "型指定"という形式で記述され(型指定はクォートされる)、これがC言語の関数の呼び出しに置き換えられる。 型指定の部分は、次のような形式になる。 …