Basically can I nest adding to the task queue or is that going to mess things up? queue.tasks +=~ { result, next in queue.tasks +=~ { result , next in print("foo") next(nil) } next(nil) }