fn main() {
fn fib(n: int) -> int {
fn _fib(n: int, a: int, b: int) -> int {
match (n, a, b) {
(0, _, _) => a,
_ => _fib(n-1, a+b, a)
}
_fib(n, 0, 1)
for int::range(0,20) |n| {
io::println(fmt!("%?", fib(n)))