# Strategic directions in concurrency research

@article{Cleaveland1996StrategicDI, title={Strategic directions in concurrency research}, author={Rance Cleaveland and Scott A. Smolka}, journal={ACM Comput. Surv.}, year={1996}, volume={28}, pages={607-625} }

Concurrency is concerned with the fundamental aspects of systems of multiple, simultaneously active computing agents that interact with one another. This notion is intended to cover a wide range of system architectures, from tightly coupled, mostly synchronous parallel systems, to loosely coupled, largely asynchronous distributed systems. We refer to systems exhibiting concurrency as concurrent systems, and we call computer programs written for concurrent systems concurrent programs…

## 79 Citations

### A Generalized Streaming Model for Concurrent Computing

- Computer ScienceArXiv
- 2010

A generalized stream computing model is promoted, inspired by previous researches on stream computing, that unifies parallelization strategies for programming language design, compiler design and operating system design and demonstrates its potential through powerful design options for programming languages, compilers and operating systems.

### Foundations of Communicating Concurrent Kleene Algebra

- Computer Science
- 2015

This paper proposes a mathematical framework for communication and concurrency called Communicating Concurrent Kleene Algebra (C 2 KA), which supports the ability to work in either a state-based or event-based model for the specification of concurrent and communicating systems.

### Hierarchical finite state machines with multiple concurrency models

- Computer ScienceIEEE Trans. Comput. Aided Des. Integr. Circuits Syst.
- 1999

This paper studies the semantics of hierarchical finite state machines (FSM's) that are composed using various concurrency models, particularly dataflow, discrete-events, and synchronous/reactive…

### Representation and Implementation of CSP and VCR Traces

- Computer ScienceCPA
- 2008

"structural" traces are introduced, a new type of trace that reflects the nested parallelism in a CSP system and are described in the Communicating Haskell Processes (CHP) library, using techniques which could easily be applied in other libraries such as JCSP and C++CSP2.

### Semantic Theories and Automated Tools for Real-Time and Probabilistic Concurrent Systems

- Computer Science
- 1997

The main results achieved include a new semantic framework for reasoning about the relative reliability of probabilistic systems in different operating environments; an efficient algorithm for checking whether a specification of a real-time concurrent system satisfies a correctness property specified in areal-time temporal logic; and a new model of soft real- time systems that allows users to make rigorous statements about the likelihood with which systems are guaranteed to meet deadlines.

### Specification and design of reactive systems

- Computer Science
- 2000

This thesis advocates decoupling the concurrency semantics from the FSM semantics, and describes a hierarchical combination of FSMs with various concurrency models becomes feasible, called *charts (pronounced “starcharts”).

### Reactive Constraint Programming

- Computer Science
- 2000

An extension of tcc that allows the specification of nondeterministic computation, called the ntcc model, which is based upon ideas from both concurrent constraint programming and CCS-like models and claims the applicability of ntCC by modeling reactive system examples of RCX controllers.

### Algorithmic Control in Concurrent Computations

- Computer ScienceFCS
- 2006

All mathematical models of distributed computation, including such popular structures as neural networks, Petri nets, systolic arrays, iterative arrays, and cellular automata, are synthesized in the concept of grid automaton to understand how control algorithms in distributed systems organize computational processes.

### A Formal Methodology for Concurrent Componentwise Development of Rich Internet Applications

- Computer Science
- 2011

This thesis proposes a formal, systematic, componentwise, model-driven RIA development approach in which the Equivalent Transformation Framework is extended to overcome the RIA challenges outlined above.

### Comparison of Concurrency Frameworks for the Java Virtual Machine

- Computer Science
- 2015

This thesis provides a survey of multiple frameworks that provide higher abstractions for concurrent programming and enable alternative concurrency paradigms on the Java virtual machine.

## References

SHOWING 1-10 OF 123 REFERENCES

### Concurrent dynamic logic

- Computer ScienceSTOC '85
- 1985

This paper investigates extensions of dynamic logic tailored towards handling concurrent programs, with or without communication, and finds that both respects are dominated by the extent to which the capabilities of synchronization and (unbounded) counting are enabled in the system.

### Models for Concurrency

- Computer ScienceMFCS
- 1991

This is a draft version of a chapter for the Handbook of Logic and the Foundations of Computer Science, Oxford University Press. The final draft can be found as DAIMI PB 463. It surveys a range of…

### Reactive Modules

- Computer Science, MathematicsProceedings 11th Annual IEEE Symposium on Logic in Computer Science
- 1996

The model represents synchronous and asynchronous components in a uniform framework that supports compositional (assume-guarantee) and hierarchical design and verification and uses a hiding operator that may turn a synchronous system into an asynchronous one.

### Algebraic theory of processes

- Computer ScienceMIT Press series in the foundations of computing
- 1988

Algebraic Theory of Processes provides the first general and systematic introduction to the semantics of concurrent systems, a relatively new research area in computer science. It develops the…

### A Resource-Based Prioritized Bisimulation for Real-Time Systems

- Computer ScienceInf. Comput.
- 1994

This paper develops a natural treatment of preemption, which is based not only on priority, but also on resource utilization and inter-resource synchronization, and yields a compositional proof system.

### Synchronous Programming of Reactive Systems

- Computer ScienceCAV
- 1998

This book presents a synthesis of recent works concerning reactive system design, based on Robin Milner's pioneering works about synchronous process algebras, which consists in considering that a program instantaneously reacts to events, or that the machine execution time is negligible with respect to the response delays of its environment.

### The concurrency workbench: a semantics-based tool for the verification of concurrent systems

- Computer ScienceTOPL
- 1993

The Concurrency Workbench is an automated tool for analyzing networks of finite-state processes expressed in Milner's Calculus of Communicating Systems and a large number of interesting verification methods can be formulated as combinations of a small number of primitive algorithms.

### The Temporal Logic of Reactive and Concurrent Systems

- Computer ScienceSpringer New York
- 1992

This volume offers an introduction to temporal logic and to the computational model for reactive programs which has been developed by the authors.

### Viewing object as patterns of communicating agents

- Computer ScienceOOPSLA/ECOOP '90
- 1990

An approach to language design in which an executable notation describing the behaviour of communicating agents is extended by syntactic patterns that encapsulate language constructs that characterizes concurrent objects in terms of their externally visible behaviour is proposed.

### Graph Rewriting and Constraint Solving for Modelling Distributed Systems with Synchronization (Extended Abstract)

- Computer ScienceCOORDINATION
- 1996

This method has two main advantages: first, it is completely formal and thus provides a precise description of the way a distributed system evolves; second, it seems very promising from the performance point of view, since the techniques to combine productions together have been proven very convenient in several cases.