Researchers: | Adam Cataldo |
---|---|
Elaine Cheong | |
Thomas Feng | |
Advisor: | Edward A. Lee |
A common problem in such environments is managing complexity, particularly when the designs become large. Most actor-oriented design environments allow hierarchy, or systems (blocks) which are composed of other systems (blocks). To take this a step further, we are developing the Ptalon programming language, which allows users to parameterize components with other components. A simple example in Ptalon is a Parallel component, a component parameterized by a component named repeater and an integer n. Parallel creates n copies of repeater in parallel:
Parallel is {
   parameter repeater;
   intparameter n;
   if (n <= 1) {
     repeater();
   } else {
     repeater();
     Parallel(repeater := repeater(), n := n - 1);
   }
}
We have developed a preliminary interpreter for the Ptalon language in the context of Ptolemy II, a general-purpose design environment for actor-oriented systems. We have also developed a mathematical framework for such languages, to help aid or understanding [1]. We are currently investigating the resource management issues inherent in supporting large block-diagram models.
For more information see the Ptalon Homepage.
[1] Adam Cataldo, Elaine Cheong, Thomas Huining Feng, Edward A. Lee and Andrew Mihal. A Formalism for Higher-Order Composition Languages that Satisfies the Church-Rosser Property. UCB/EECS-2006-48, EECS, University of California, Berkeley, 2006.
[2] Edward A. Lee. Model-driven development - from object-oriented design to actor-oriented design. In Workshop on Software Engineering for Embedded Systems: From Requirements to Implementation (a.k.a. The Monterey Workshop), Chicago, 2003.
Last updated 09/29/06