This appears to be based on completely isolated runtimes. Note this line from fibonacci-recursive:
// Broadcast function declaration of 'fibonacci' to napa workers.
zone.broadcast(fibonacci.toString());
This "serializes" the function `fibonacci` as a string (!) and then `eval`s it in all the workers; this has some obvious limitations. Anyways about the same level as WebWorker.Filip Pizlo probably has outlined the best attempt at how real multithreaded JS might work: https://webkit.org/blog/7846/concurrent-javascript-it-can-wo...