2007-08-20から1日間の記事一覧

Concurrent Clean : 型クラス

次のような指定はダメ。"multiply defined"といって怒られる。 class A q where a :: q -> {#Char} instance A {#a} where a _ = "Array" instance A {#Char} where a _ = "String" 次のような指定はOK。 class B q a where b :: (q a) -> {#Char} instance …

Soft Heap

http://www.radiumsoftware.com/0605.html#060525 一定程度の誤りを許容することで高速化を図ったヒープのアルゴリズム

Concurrent Clean : 文字列のみ効率のよい関数

[id:lethevert:20070819:p1]であげた配列操作の中で、文字列のみと書いているのは、文字列のみ標準関数が提供されているのであるが、この実装はABCマシンで文字列専用のプリミティブが用意されていて、特別に効率よく操作できるようになっている。 で、これ…

Concurrent Clean : ++と+++

++と+++の違いは、++は第2引数の評価がlazyなのに対して、+++はeagerなところです。 って、そんなことでいいのかなぁ