30 lines
339 B
Plaintext
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);
|
|
}
|
|
|