["To execute a fixed sequence of instructions","To continuously poll for new events and route them to registered handlers","To handle a single type of event","To block other parts of the program while waiting for an event"]