That's a good point. "error" events are a lot like exceptions and are treated specially by Node (if there's no error handler, it acts like an exception and bubbles up and quits the program). [This article makes Domains sound attractive](http://snmaynard.com/2012/12/21/node-error-handling/) but they're still (even in 0.10) considered "unstable".

I was unable to find anything that concretely says whether error events are only called once. It's easy enough to guard against, but I think we'll ultimately want to switch to domains once they're stable.