First-class functions/Use numbers analogously: Difference between revisions

Line 935:
}
}</lang>
 
=={{header|Objeck}}==
<lang objeck>use Collection.Generic;
 
class FirstClass {
function : Main(args : String[]) ~ Nil {
x := 2.0;
xi := 0.5;
y := 4.0;
yi := 0.25;
z := x + y;
zi := 1.0 / (x + y);
 
numlist := CompareVector->New()<FloatHolder>;
numlist->AddBack(x); numlist->AddBack(y); numlist->AddBack(z);
 
numlisti := Vector->New()<FloatHolder>;
numlisti->AddBack(xi); numlisti->AddBack(yi); numlisti->AddBack(zi);
each(i : numlist) {
v := numlist->Get(i); vi := numlisti->Get(i);
mult := Multiplier(v, vi);
r := mult(0.5);
"{$v} * {$vi} * 0.5 = {$r}"->PrintLine();
};
}
function : Multiplier(a : FloatHolder, b : FloatHolder) ~ (FloatHolder) ~ FloatHolder {
return \(FloatHolder) ~ FloatHolder : (c) => a * b * c;
}
}
</lang>
 
{{output}}
<pre>
2 * 0.5 * 0.5 = 0.5
4 * 0.25 * 0.5 = 0.5
6 * 0.166667 * 0.5 = 0.5
</pre>
 
=={{header|OCaml}}==
760

edits