2006-05-28から1日間の記事一覧

相互評価の誤差

ちと古い話ですが、[id:lethevert:20051213:p3]で取り上げた相互評価の話。 直感的な話で申し訳ないですが、全社員が自分に仕事上関係する人の評価を相互につけて、その結果を集計して個々人の評価を決定するというようなシステムの場合、 1.人数が少ない…

TAPL : Types and Programming Languages (The MIT Press)

[id:lethevert:20060527:p1] もう届いたよ。すげ―なAmazon。

Concurrent Clean : CleanJ : プレースホルダ

ポインタのないJavaで項書き換えを行うには、プレースホルダを用意する必要があるのだけれど、全てのケースでプレースホルダを用意するのは効率が悪い。項書き換えが起こる可能性があるところにだけ、プレースホルダを用意すべき。 項書き換えが起こる可能性…

Concurrent Clean : CleanJ : 代数データ型

昨日の話([id:lethevert:20060527:p3])が良くわからなくなってきたので、代数データ型の例を作ってみた。 module Algebraic import StdEnv, OptEnv ::Tree x = Leaf x | Branch [Tree x] Start = sumTree $ Branch [Leaf 1, Leaf 2, Branch [Leaf 3, Leaf …

Java : 配列の部分コピー

配列の部分コピーを行うのに、最も効率の良い方法は何かと考えていたのですが・・・ int[] src = new int[] {1,2,3,4,5}; int[] dst = new int[6]; dst[0] = 0; for (int i=0; i

Concurrent Clean : CleanJ : Java : 配列とオブジェクトのどちらが効率的か

代数データ型の内部データ構造を考える。 Object[] data = new Object[2] { CleanSystem._Cons, vm.topN(2) };のように、これまた配列として取り扱うか、 CleanData data = new CleanData( CleanSystem._Cons, vm.topN(2) );のように、専用のオブジェクトを…

Concurrent Clean : 部分適用関数の印字

module HeadNormal import StdEnv Start = (+) 1は、(+)関数の部分適用を印字します。 (+;6 1)