Erlang comes to mind as a good event-based language. Strangely, it is rarely (if ever) used for UI.
http://video.google.com/videoplay?docid=810232012617965344
http://video.google.com/videoplay?docid=810232012617965344