#!/usr/bin/ruby
# gather/take construct
func fib(n) {
var arr = gather {
take(n <= 1 ? n : fib(n-1)+fib(n-2));
};
return arr[0];
}
assert_eq(144, fib(12));
say "** Test passed!";
#!/usr/bin/ruby
# gather/take construct
func fib(n) {
var arr = gather {
take(n <= 1 ? n : fib(n-1)+fib(n-2));
};
return arr[0];
}
assert_eq(144, fib(12));
say "** Test passed!";