The term "reactive programming" refers to a programming style based on
handling "events" of all sorts. App developers are familiar with simple
user interface events, such as mouse clicks, and know how to deal with
them using their favorite programming language. But there are also other
kinds of events an app may have to deal with, such as a state change of
an object, an incoming message, the completion of an asynchronuous
operation or an exception/error event.