Building An Actor-Oriented Language

Researchers: Adam Cataldo
Advisor:Edward A. Lee

Ptolemy II [1] is an actor-oriented modeling environment for embedded software design. In actor-oriented design [2], actors are concurrent components which communicate through ports according to a pattern of interaction. This contrasts object-oriented design, where objects interact by passing control between each other. In Ptolemy II, one builds hierarchies of actors, where the communication patterns, which can change between hierarchy levels, are specified via reusable components called directors.

This environment naturally describes large systems, where the interaction between components depends on the level in the hierarchy. To support such systems, features must scale well with model size. Unfortunately, this is not true for the current implementation. I therefore propose designing a scalable, actor-oriented language which leverages the flexible interaction patterns of Ptolemy II.

Such a language should simplify the design of large concurrent systems, where programmers must be able bundle components through hierarchy [3] and extend components in an object-oriented approach [4]. Higher-order actors can allow programmers to model dynamic networks. The design challenge is to provide the appropriate language features while maintaining the scalability needed for large models.

[1] Christopher Brooks, Edward A. Lee, Xiojun Liu, Stephen Neuendorffer, Yang Zhao, and Haiyang Zheng. Heterogeneous concurrent modeling and design in Java. Technical Report UCB/ERL M05/21, EECS, University of California, Berkeley, 2005.

[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.

[3] Johan Eker, Jšorn W. Janneck, Edward A. Lee, Jie Liu, Xiaojun Liu, J. Ludvig, Stephen Neuendorffer, S. Sachs, and Yuhong Xiong. Taming heterogeneity - the Ptolemy approach. Proceedings of the IEEE, 91(1):127–144, 2003.

[4] Edward Lee and Stephen Neuendorffer. Classes and subclasses in actor-oriented design. In Conference of Formal Methods and Models for Codesign, 2004.

Last updated 10/17/05