lanes = require "lanes".configure{with_timers=false} -- make sure we can copy functions with interdependant upvalues local b local a = function( n) print( "a", n) return n <= 0 and n or b( n-1) end local c b = function( n) print( "b", n) return n <= 0 and n or c( n-1) end c = function( n) print( "c", n) return n <= 0 and n or a( n-1) end local g = lanes.gen( "*", a) local l = g(10) l:join()