summaryrefslogtreecommitdiff
path: root/test.toc
blob: b367305a146ae2914227f25e2ae124ef0c29a488 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
puti ::= fn(x: int) {
	 #C("printf(\"%ld\\n\", x)");
};
putf ::= fn(x: float) {
	 #C("printf(\"%f\\n\", x)");
};

f ::= fn(t::=, u ::=, x :t, y:u) t {
  	  x + (y as t)
};

test ::= fn(t::=int,u::=t,x:u)u {
	 x*2	 
};

main ::= fn() {
	 puti(f(13,15));
	 puti(f(14,14.4));
	 puti(f(15,13.1));
	 putf(f(2.2,3.1));
	 puti(test(5));
};