heptagon/test/good/array_iterators.ept
Cédric Pasteur 99eeacbceb Added mapi iterator
The last argument of the iterated function is the
index of the element in the array.
2011-03-22 09:28:41 +01:00

55 lines
839 B
Plaintext

const n:int = 42
node plusone(a:int) returns (o:int)
let
o = a+1;
tel
node g(a:int^n) returns (o:int^n)
let
o = map<<n>> plusone (a);
tel
node sum_acc (a, acc_in:int) returns (acc_out:int)
let
acc_out = acc_in + a;
tel
node h(a:int^n) returns (m:int)
let
m = fold<<n>> sum_acc (a, 0);
tel
node sum_dup (a, acc_in:int) returns (o:int; acc_out:int)
let
acc_out = acc_in + a;
o = acc_out;
tel
node p(a:int^n) returns (o:int^n)
var acc:int;
let
(o, acc) = mapfold<<n>> sum_dup (a, 0);
tel
node k(a,b:int^n) returns (o:int^n)
let
o = map<<n>> (+) (a,b);
tel
node iter_reset(a:int^n; r:bool) returns (o:int^n)
let
reset
o = map<<n>> plusone (a);
every (r & r)
tel
node m(t:int^n; a:int; i:int) returns (o:int)
let
o = a * i + t[0];
tel
node itmapi(a:int^n) returns (o:int^n)
let
o = mapi <<n>> m(<a>)(a);
tel