Node.js version 0.10 was released today and introduced setImmediate. The Api changes documentation suggests using it when doing recursive nextTick calls.
From what mdn says it seems very similar to process.nextTick
When should I use nextTick and when should I use setImmediate?
Use setImmediate if you want to queue the function behind whatever I/O event callbacks that are already in the event queue. Use process.nextTick to effectively queue the function at the head of the event queue so that it executes immediately after the current function completes.
So in a case where you're trying to break up a long running, CPU-bound job using recursion, you would now want to use setImmediate rather than process.nextTick to queue the next iteration as otherwise any I/O event callbacks wouldn't get the chance to run between iterations.
In the comments in the answer, it does not explicitly state that nextTick shifted from Macrosemantics to Microsemantics.
before node 0.9 (when setImmediate was introduced), nextTick operated at the start of the next callstack.
since node 0.9, nextTick operates at the end of the existing callstack, whereas setImmediate is at the start of the next callstack
check out https://github.com/YuzuJS/setImmediate for tools and details