piscisaureus/luvit — comment on commit cf0c39047641cc9088fa7908da22e54a176f90bf
File:  line 0
By piscisaureus:

You unref() all signal handlers and stdin and stdout, so there are no ref'ed handles left that keep the event loop alive.

Possibly the status quo works under unix for some reason. That would be a libuv-unix bug.