Lindaのeval操作 Lindaでタプルを生成する操作にはoutとevalの二つがあります。out操作はRinda::TupleSpaceのwriteに対応します。 0から9までの二乗根のタプルの生成は次のようにします。 /* C-Linda */ for (i = 0; i < 10; i++) out("sqrt", i, sqrt(i));/* Rinda */ 10.times do |n| ts.write([:sqrt, n, Math.sqrt(n)]) end eval操作はout操作にそっくりに見えますが、プロセスが生成される点が違います。なんと新しいプロセス側で引数の評価を行い、その結果からタプルを生成します。次の疑似コードは10個のプロセスを生成して、それぞれが一つのタプルを生成するものです。sqrtは生成されたプロセスで計算されます。 /* C-Linda */