Actors: a model of concurrent computation in distributed systems
Actors: a model of concurrent computation in distributed systems
Object-oriented concurrent programming ABCL/1
OOPLSA '86 Conference proceedings on Object-oriented programming systems, languages and applications
Concurrent programming in ERLANG (2nd ed.)
Concurrent programming in ERLANG (2nd ed.)
Programming dynamically reconfigurable open systems with SALSA
ACM SIGPLAN Notices
Actors as a Coordinating Model of Computation (Extended Abstract)
Proceedings of the Second International Andrei Ershov Memorial Conference on Perspectives of System Informatics
StreamIt: A Language for Streaming Applications
CC '02 Proceedings of the 11th International Conference on Compiler Construction
ACTORS AND CONTINUOUS FUNCTIONALS
ACTORS AND CONTINUOUS FUNCTIONALS
X10: an object-oriented approach to non-uniform cluster computing
OOPSLA '05 Proceedings of the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Exploiting coarse-grained task, data, and pipeline parallelism in stream programs
Proceedings of the 12th international conference on Architectural support for programming languages and operating systems
Statistically rigorous java performance evaluation
Proceedings of the 22nd annual ACM SIGPLAN conference on Object-oriented programming systems and applications
Phasers: a unified deadlock-free construct for collective and point-to-point synchronization
Proceedings of the 22nd annual international conference on Supercomputing
Kilim: Isolation-Typed Actors for Java
ECOOP '08 Proceedings of the 22nd European conference on Object-Oriented Programming
Scala Actors: Unifying thread-based and event-based programming
Theoretical Computer Science
Actor frameworks for the JVM platform: a comparative analysis
PPPJ '09 Proceedings of the 7th International Conference on Principles and Practice of Programming in Java
A universal modular ACTOR formalism for artificial intelligence
IJCAI'73 Proceedings of the 3rd international joint conference on Artificial intelligence
Parallel programming with object assemblies
Proceedings of the 24th ACM SIGPLAN conference on Object oriented programming systems languages and applications
A simple and deterministic competitive algorithm for online facility location
Information and Computation
JCoBox: generalizing active objects to concurrent components
ECOOP'10 Proceedings of the 24th European conference on Object-oriented programming
Scientific Programming - Exploring Languages for Expressing Medium to Massive On-Chip Parallelism
Efficient data race detection for async-finish parallelism
RV'10 Proceedings of the First international conference on Runtime verification
Concurrency among strangers: programming in E as plan coordination
TGC'05 Proceedings of the 1st international conference on Trustworthy global computing
Data-Driven Tasks and Their Implementation
ICPP '11 Proceedings of the 2011 International Conference on Parallel Processing
Habanero-Java: the new adventures of old X10
Proceedings of the 9th International Conference on Principles and Practice of Programming in Java
Ambient-Oriented programming in ambienttalk
ECOOP'06 Proceedings of the 20th European conference on Object-Oriented Programming
Scalable and precise dynamic datarace detection for structured parallelism
Proceedings of the 33rd ACM SIGPLAN conference on Programming Language Design and Implementation
Why do scala developers mix the actor model with other concurrency models?
ECOOP'13 Proceedings of the 27th European conference on Object-Oriented Programming
Semantics-preserving sharing actors
Proceedings of the 2013 workshop on Programming based on actors, agents, and decentralized control
A task framework on top of a concurrent OOP language rooted on agent-oriented abstractions
Proceedings of the 2013 workshop on Programming based on actors, agents, and decentralized control
Science of Computer Programming
Hi-index | 0.00 |
This paper introduces a unified concurrent programming model combining the previously developed Actor Model (AM) and the task-parallel Async-Finish Model (AFM). With the advent of multi-core computers, there is a renewed interest in programming models that can support a wide range of parallel programming patterns. The proposed unified model shows how the divide-and-conquer approach of the AFM and the no-shared mutable state and event-driven philosophy of the AM can be combined to solve certain classes of problems more efficiently and productively than either of the aforementioned models individually. The unified model adds actor creation and coordination to the AFM, while also enabling parallelization within actors. This paper describes two implementations of the unified model as extensions of Habanero-Java and Habanero-Scala. The unified model adds to the foundations of parallel programs, and to the tools available for the programmer to aid in productivity and performance while developing parallel software.