aboutsummaryrefslogtreecommitdiff
path: root/examples/functions.cup
blob: f24b55ac3dd32c7f61ec89eedcc6602664ad5381 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
fn rec_sum(n: int, accum: int): int {
    if (n == 0)
        return accum;
    return rec_sum(n - 1, accum + n);
}

fn sum(n: int): int {
    return rec_sum(n, 0);
}

fn main(): int {
    return sum(10);
}