Posted to tcl by hypotoad at Fri Sep 28 21:11:06 GMT 2018view raw

  1. proc fib_gen {} {
  2. set seq0 0
  3. set seq1 1
  4. yield [info coroutine]
  5. yield 1
  6. while 1 {
  7. set seq [expr {$seq0+$seq1}]
  8. set seq0 $seq1
  9. set seq1 $seq
  10. yield $seq
  11. }
  12. }
  13.  
  14. coroutine FIB fib_gen
  15. for {set x 0} {$x < 46} {incr x} {
  16. puts [list [FIB]]
  17. }
  18.