aboutsummaryrefslogtreecommitdiff
path: root/examples/fib.sloth
blob: 415de0553506da10eedc2041de77f1187336dc33 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
## Calculate a specific number in the fibonacci sequence 
fn fib(n: i32) -> i32 {
    match n {
        0 | 1 => n,
        _ => fib(n - 1) + fib(n - 2),
    }
}

generator fn fib_sequence(range: Range<i32>) -> i32 {
    for n in range {
        yield fib(n);
    }
}

print(fib_sequence(0..20).join(", "))