f(a, b, c, d, %dict) = sprintf("a=%d b=%d c=%d d=%d %s", a, b, c, d, dict)
f(1, 2, 3, 4) .. a=1 b=2 c=3 d=4 %{}
f(1, 2, d => 4, c => 4) .. a=1 b=2 c=4 d=4 %{}
f(a => 1, b => 2, c => 3, d => 4) .. a=1 b=2 c=3 d=4 %{}
f(c => 3, a => 1, b => 2, d => 4) .. a=1 b=2 c=3 d=4 %{}
f(b => 2, c => 3, d => 4, a => 1, e => 1) .. a=1 b=2 c=3 d=4 %{e => 1}
f(d => 4, 1, 2, 3) .. a=1 b=2 c=3 d=4 %{}
f(d => 4, 1, 2, 3, e => 5, f => 6, g => 7) .. a=1 b=2 c=3 d=4 %{e => 5, f => 6, g => 7}
a=2, b=nil, c=nil
a=2, b=3, c=nil
a=2, b=3, c=def
a=2, b=10, c=abc
a=2, b=3, c=abc
a=2, b=3, c=def
a=2, b=3, c=[4, 5, 6, 7]
a=2, b=3, c=[]
a=2, b=3, c=[4, 5, 6, 7]
TypeError at line.29: not enough arguments for 'f4(a, b, c+)'
test of closure
 3 4 5 6 7 8
 5  3  2  4
 6  4  3  5
 7  5  4  6
 8  6  5  7
 9  7  6  8
10  8  7  9
11  9  8 10
12 10  9 11
13 11 10 12
14 12 11 13
  0  1  2  3  4  5  6  7  8  9 10
-0.139708
f(x) = x
g(x):void = x
f(2) .. 2
g(2) .. nil
f($x, $y) = { $x < $y }
f(1, 3) .. true
f(4, 3) .. false
f($a, $b, $c, $d, $e, $f, $g, $h, $i, $j) = { (((((((($a + $b) + $c) + $d) + $e) + $f) + $g) + $h) + $i) + $j }
f(1, 2, 3, 4, 5, 6, 7, 8, 9, 10) .. 55
acos(value):map .. [1.5708, 1.45946, 1.3467, 1.23096, 1.11024, 0.981765, 0.841069, 0.679674, 0.475882, 0]
asin(value):map .. [0, 0.111341, 0.224093, 0.339837, 0.460554, 0.589031, 0.729728, 0.891123, 1.09491, 1.5708]
atan(value):map .. [0, 0.110657, 0.218669, 0.321751, 0.418224, 0.507099, 0.588003, 0.661043, 0.726642, 0.785398]
ceil(value):map .. [-2, -1, -1, -0, -0, 0, 1, 1, 2, 2, 2]
cos(value):map .. [-0.416147, -0.0291995, 0.362358, 0.696707, 0.921061, 1, 0.921061, 0.696707, 0.362358, -0.0291995, -0.416147]
cosh(value):map .. [3.7622, 2.57746, 1.81066, 1.33743, 1.08107, 1, 1.08107, 1.33743, 1.81066, 2.57746, 3.7622]
exp(value):map .. [0.135335, 0.201897, 0.301194, 0.449329, 0.67032, 1, 1.49182, 2.22554, 3.32012, 4.95303, 7.38906]
abs(value):map .. [2, 1.6, 1.2, 0.8, 0.4, 0, 0.4, 0.8, 1.2, 1.6, 2]
floor(value):map .. [-2, -2, -2, -1, -1, 0, 0, 0, 1, 1, 2]
sin(value):map .. [-0.909297, -0.999574, -0.932039, -0.717356, -0.389418, 0, 0.389418, 0.717356, 0.932039, 0.999574, 0.909297]
sinh(value):map .. [-3.62686, -2.37557, -1.50946, -0.888106, -0.410752, 0, 0.410752, 0.888106, 1.50946, 2.37557, 3.62686]
sqrt(value):map .. [1.41421j, 1.26491j, 1.09545j, 0.894427j, 0.632456j, 0, 0.632456, 0.894427, 1.09545, 1.26491, 1.41421]
tan(value):map .. [2.18504, 34.2325, -2.57215, -1.02964, -0.422793, 0, 0.422793, 1.02964, 2.57215, -34.2325, -2.18504]
tanh(value):map .. [-0.964028, -0.921669, -0.833655, -0.664037, -0.379949, 0, 0.379949, 0.664037, 0.833655, 0.921669, 0.964028]
log(value):map .. [0, 0.693147, 1.09861, 1.38629, 1.60944, 1.79176, 1.94591, 2.07944, 2.19722, 2.30259]
log10(value):map .. [0, 0.30103, 0.477121, 0.60206, 0.69897, 0.778151, 0.845098, 0.90309, 0.954243, 1]
5 .. should be 5
