MetaCartSign in to MyCiteSeer

Include Citations | Advanced Search | Help

Include Citations | Advanced Search | Help

  Programming Dynamically Reconfigurable Open Systems with SALSA (2001) [25 citations — 12 self]

Download:
Download as a PDF | Download as a PS
by Carlos Varela, Gul Agha
ACM SIGPLAN Notices. OOPSLA’2001 Intriguing Technology Track Proceedings
http://osl.cs.uiuc.edu/Papers/oopsla2001.ps
Add To MetaCart

Abstract:

Applications running on the Internet, or on limited-resource devices, need to be able to adapt to changes in their execution environment at run-time. Current languages and systems fall short of enabling developers to migrate and recon gure application sub-components at program-execution time. In this paper, we describe essential aspects of the design and implementation of SALSA, an actor-based language for mobile and Internet computing. SALSA simplies programming dynamically recongurable, open applications by providing universal names, active objects, and migration. Moreover, SALSA introduces three language mechanisms to help programmers coordinate asynchronous, mobile computations: token-passing continuations, join continuations and rst-class continuations. We provide some examples which illustrate how SALSA programs are not only dynamically recongurable and open, but also much more concise and easier to follow than comparable Java code. Furthermore, we provide empirical results which show SALSA's performance to be better than Java code using an actor library, and which illustrate the dierence between local, local area, and wide area communication and migration. Finally, we discuss the implementation of our preprocessor which translates SALSA code into Java. 1

Citations

965 Reasoning About Knowledge – FAGIN, HALPERN, et al. - 1995
865 Actors: A Model of Concurrent Computation in Distributed Systems – Agha - 1986
663 Mobile ambients – Cardelli, Gordon
410 A language with distributed scope – Cardelli - 1995
384 Monitors: an operating system structuring concept – Hoare - 1974
299 Viewing control structures as patterns of passing messages – Hewitt - 1977
215 Escape analysis for Java – Choi, Gupta, et al. - 1999
168 A foundation for actor computation – Agha, Mason, et al. - 1997
155 Type-based race detection for Java – Flanagan, Freund - 2000
154 Object-Oriented Multi-Methods in Cecil – Chambers - 1992
135 Fixing the Java memory model – Pugh - 1999
125 MultiJava: Modular open classes and symmetric multiple dispatch for Java – Clifton, Leavens, et al. - 2000
114 ABCL: An Object-Oriented Concurrent System – Yonezawa - 1990
102 Removing unnecessary synchronization in Java – Bogda, Höltze - 1999
97 The Java Language Speci – Gosling, Joy, et al. - 1996
97 Effective synchronization removal for Java – Ruf - 2000
83 Nomadic Pict: Language and infrastructure design for mobile agents – Wojciechowski, Sewell - 2000
77 Actalk: A testbed for classifying and designing actor languages in the Smalltalk80 environment – Briot - 1989
60 Service Combinators for Web Computing – Cardelli - 1999
55 Static Analyses for Eliminating Unnecessary Synchronization from Java Programs – Aldrich, Chambers, et al. - 1999
55 The Java Virtual Machine Speci – Lindholm, Yellin - 1997
53 Concurrent Aggregates: Supporting Modularity in Massively-Parallel Programs – Chien - 1993
42 Abstracting interaction patterns: A programming paradigm for open distributed systems,” in Formal Methods for Open ObjectBased – Agha - 1997
40 Guava: A dialect of Javawithout data races – Bacon, Strom, et al. - 2001
33 HAL: A high-level actor language and its distributed implementation – Houck, Agha - 1992
29 Improving the Java memory model using CRF – Maessen, Shen - 2000
20 Mobile agents: Motivations and state-of-the-art systems – Gray, Kotz, et al. - 2000
17 A calculus with code mobility – Sekiguchi, Yonezawa - 1997
12 Rosette: An Object Oriented Concurrent System Architecture – Tomlinson, Kim, et al. - 1989
10 The Actor Foundry: A Java-based Actor Programming Environment – Lab - 1998
10 A Hierarchical Model for Coordination of Concurrent Activities – Varela, Agha - 1999
8 Characterizations of Java memory behavior – Gontmakher, Schuster - 1998
8 Worldwide Computing with Universal Actors: Linguistic Abstractions for Naming, Migration, and Coordination – Varela - 2001
7 Intra- and Inter-Object Coordination with MESSENGERS – Fukuda, Bic, et al. - 1996
5 Programming and Deploying Mobile Agents with Aglets – Lange, Oshima - 1998
5 Modular Speci of Interaction Policies in Distributed Computing – Sturman - 1996
2 An Actor System for Ecient and Scalable Concurrent Computing – THAL - 1997
1 Linguistic Support for Actors, First-Class Token-Passing Continuations and Join Continuations – Varela, Agha - 1999