The Ptalon Programming Language


Researchers: Adam Cataldo
Elaine Cheong
Thomas Feng
Advisor:Edward A. Lee

Actor-oriented design [2] is a common design strategy in embedded system design, where actors are concurrent components which communicate through ports by sending signals to one another. Such systems are frequently modeled with block diagrams, where the blocks represent systems and lines or arrows between blocks represent signals. Examples include Simulink, LabView, and VHDL/Verilog.

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