Event-Based Programming [electronic resource] : Taking Events to the Limit