Implicit invocation (II) and aspect-oriented (AO) languages provide related but distinct mechanisms for separation of concerns.
II languages have explicitly announced events that run registered observer methods. AO languages have implicitly announced
events that run method-like but more powerful advice. A limitation of II languages is their inability to refer to a large
set of events succinctly. They also lack the expressive power of AO advice. Limitations of AO languages include potentially
fragile dependence on syntactic structure that may hurt maintainability, and limits on the available set of implicit events
and the reflective contextual information available. Quantified, typed events, as implemented in our language Ptolemy, solve
all these problems. This paper describes Ptolemy and explores its advantages relative to both II and AO languages.
Rajan was supported in part by the NSF grant CNS-0627354. Leavens was supported in part by NSF grant CCF-0429567. Both were
supported in part by NSF grant CNS 08-08913.