Partial function application: Difference between revisions
Content added Content deleted
Line 629: | Line 629: | ||
{4 16 36 64} |
{4 16 36 64} |
||
</lang> |
</lang> |
||
=={{header|Elena}}== |
|||
{{trans|Smalltalk}} |
|||
ELENA 3.2 : |
|||
<lang elena>import system'collections. |
|||
import system'routines. |
|||
import extensions. |
|||
program = |
|||
[ |
|||
var partial := (:afs:af)((:s)(afs eval(af, s))). |
|||
var fs := (:f:s)(s selectBy(:x)(f eval:x); summarize(ArrayList new); toArray). |
|||
var f1 := (:x)(x * 2). |
|||
var f2 := (:x)(x * x). |
|||
var fsf1 := partial eval(fs, f1). |
|||
var fsf2 := partial eval(fs, f2). |
|||
console printLine(fsf1 eval:(2,4,6,8)). |
|||
console printLine(fsf2 eval:(2,4,6,8)). |
|||
].</lang> |
|||
{{out}} |
|||
<pre> |
|||
4,8,12,16 |
|||
4,16,36,64 |
|||
</pre> |
|||
=={{Header|F_Sharp|F#}}== |
=={{Header|F_Sharp|F#}}== |