summaryrefslogtreecommitdiff
path: root/test.toc
blob: 2eb281439905a5c34ec0a1cf1136b22497f403f4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
/*
#include "std/io.toc", io;
#include "std/arr.toc", arr;

arr_sum ::= fn(n::=, t::=, a:arr.Arr(t)) t {
	total := 0 as t;
	for x := a.data {
		total += x;
	}
	total
};

mk_arr ::= fn(x:int, y:int, z:int) a:arr.Arr(int) {
	arr.add(&a, x);
	arr.add(&a, y);
	arr.add(&a, z);
};

main ::= fn() {
	 a := mk_arr(1,2,3);
	 io.puti(arr.len(a));
	 io.puti(arr_sum(a));
};
*/

foo ::= fn(x::int) Type {
	struct {
		   a: [x]int;
	}
};

main ::= fn() {
	 f: foo(5);
};