Design, Semantics and Implementation of the Ptolemy Programming Language: A Language with Quantified Typed Events
By: Hridesh Rajan and Gary T. Leavens
Download PaperAbstract
Implicit invocation (II) and aspect-oriented (AO) languages provide software designers with related but distinct mechanisms and strategies for decomposing programs into modules and composing modules into systems. 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.
ACM Reference
Rajan, H. and Leavens, G.T. 2015. Design, Semantics and Implementation of the Ptolemy Programming Language: A Language with Quantified Typed Events. Technical Report #15-10. Iowa State University, Dept. of Computer Science.
BibTeX Reference
@techreport{rajan2015design,
title = {Design, Semantics and Implementation of the Ptolemy Programming Language: A Language with Quantified Typed Events},
author = {Rajan, Hridesh and Leavens, Gary T},
year = {2015},
month = {July},
institution = {Iowa State University, Dept. of Computer Science},
number = {15-10},
abstract = {
Implicit invocation (II) and aspect-oriented (AO) languages provide software
designers with related but distinct mechanisms and strategies for decomposing
programs into modules and composing modules into systems. 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.
}
}