package main import ( "fmt" ) func fib() func() int { a, b := 0, 1 return func() int { a, b = b, a+b return b } } func main() { f := fib() fmt.Println("This Fibonacci sequense < 10000") for x := f(); x < 10000; x = f() { fmt.Println(x) } }