What’s does a mouse drag event have in common with an Array of numbers?
Declaratively build complex events out of simple events (ex. drag n’ drop)
Coordinate and sequence multiple Ajax requests
Reactively update UI’s in response to data changes
Eliminate memory leaks caused by neglecting to unsubscribe from events
Gracefully propagate and handle asynchronous exceptions