Files
compiler-the-translators/test.alpha

30 lines
339 B
Plaintext

type a : 1 -> integers
type t : integer -> a
type r : integer -> integer
function foo : t
function bar : r
function entry :
bar(a) := {
5 + bar(a - 1);
return a * bar(a-1);
}
foo(c) := {
[a: arg]
arg := reserve arg(c);
return arg;
}
entry(args) := {
[a: b]
b := foo(8);
}