lambdas without params, lambdas are now passed as vars instead of funcs
[cc1516.git] / examples / tempTest.spl
1 //plus(x,y){
2 // return x+y;
3 //}//
4
5 map(f, xs) {
6 if (isEmpty(xs)) {
7 return [];
8 } else {
9 return f(xs.hd) : map(f, xs.tl);
10 }
11 }
12
13 foldr(f, acc, xs) {
14 if(isEmpty(xs)) {
15 return acc;
16 } else {
17 return foldr(f, f(xs.hd, acc), xs.tl);
18 }
19 }
20
21 l2(x) :: Int -> Void {
22 //return print(3);
23 var y = print(3);
24 return;
25 }
26
27 repeat(f, n) {
28 var x = n;
29 while(x > 0) {
30 f();
31 x = x-1;
32 }
33 }
34
35 main() {
36 //var f = \x->print(x);
37 //var z = map(\x->print(3), 1:2:[]);
38 repeat(\->print(0), 5);
39 //var x = foldr(\x y->x+y, 0, 1:2:[]);
40 //print(x);
41 return;
42 }