Communicating sequential processes
Communicating sequential processes
Statecharts: A visual formalism for complex systems
Science of Computer Programming
Process calculi, from theory to practice: verification tools
Proceedings of the international workshop on Automatic verification methods for finite state systems
Notes on algebraic calculi of processes
Logics and models of concurrent systems
The ESTEREL synchronous programming language: design, semantics, implementation
Science of Computer Programming
Mechanized reasoning and hardware design
Programming in OCCAM
An operational framework for value-passing processes
POPL '94 Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Design of heterogeneous ICs for mobile and personal communication systems
ICCAD '94 Proceedings of the 1994 IEEE/ACM international conference on Computer-aided design
DAC '98 Proceedings of the 35th annual Design Automation Conference
An analysis-based approach to composition of distributed embedded systems
Proceedings of the 6th international workshop on Hardware/software codesign
ipChinook: an integrated IP-based design framework for distributed embedded systems
Proceedings of the 36th annual ACM/IEEE Design Automation Conference
Formal Methods in System Design - Special issue on The First Federated Logic Conference (FLOC'96), part II
BDL: A Specialized Language for Per-Object Reactive Control
IEEE Transactions on Software Engineering
PADL '03 Proceedings of the 5th International Symposium on Practical Aspects of Declarative Languages
Coordination of Synchronous Programs
COORDINATION '99 Proceedings of the Third International Conference on Coordination Languages and Models
Principles of Real-Time Programming
EMSOFT '02 Proceedings of the Second International Conference on Embedded Software
LICS '96 Proceedings of the 11th Annual IEEE Symposium on Logic in Computer Science
A formal approach to reactive systems software: a telecommunications application in ESTEREL
WIFT '95 Proceedings of the 1st Workshop on Industrial-Strength Formal Specification Techniques
BDL: a language to control the behavior of concurrent objects
DSL'97 Proceedings of the Conference on Domain-Specific Languages on Conference on Domain-Specific Languages (DSL), 1997
Existential abstractions for distributed reactive systems via syntactic transformations
EMSOFT '07 Proceedings of the 7th ACM & IEEE international conference on Embedded software
Modeling Communication with Synchronized Environments
Fundamenta Informaticae - Application of Concurrency to System Design (ACSD'06)
SystemJ compilation using the tandem virtual machine approach
ACM Transactions on Design Automation of Electronic Systems (TODAES)
Verification of GALS Systems by Combining Synchronous Languages and Process Calculi
Proceedings of the 16th International SPIN Workshop on Model Checking Software
A customizable multiprocessor for Globally Asynchronous Locally Synchronous execution
Proceedings of the 7th International Workshop on Java Technologies for Real-Time and Embedded Systems
Synchronous Estelle: Just Another Synchronous Language?
Electronic Notes in Theoretical Computer Science (ENTCS)
Reactivity in systemC transaction-level models
HVC'07 Proceedings of the 3rd international Haifa verification conference on Hardware and software: verification and testing
SystemJ: A GALS language for system level design
Computer Languages, Systems and Structures
Synchronous control of reconfiguration in fractal component-based systems: a case study
EMSOFT '11 Proceedings of the ninth ACM international conference on Embedded software
Reactive framework for resource aware distributed computing
ASIAN'04 Proceedings of the 9th Asian Computing Science conference on Advances in Computer Science: dedicated to Jean-Louis Lassez on the Occasion of His 5th Cycle Birthday
Validated code generation for activity diagrams
ICDCIT'05 Proceedings of the Second international conference on Distributed Computing and Internet Technology
Modeling Communication with Synchronized Environments
Fundamenta Informaticae - Application of Concurrency to System Design (ACSD'06)
Programming parallelism with futures in lustre
Proceedings of the tenth ACM international conference on Embedded software
Design and optimization of multi-clocked embedded systems using formal technique
Proceedings of the 2013 9th Joint Meeting on Foundations of Software Engineering
Hi-index | 0.00 |
We present a new programming paradigm called Communicating Reactive Processes or CRP that unifies the capabilities of asynchronous and synchronous concurrent programming languages. Asynchronous languages such as CSP, OCCAM, or ADA are well-suited for distributed algorithms; their processes are loosely coupled and communication takes time. The ESTEREL synchronous language is dedicated to reactive systems; its processes are tightly coupled and deterministic, communication being realized by instantaneous broadcasting. Complex applications such as process of robot control require to couple both forms of concurrency, which is the object of CRP. A CRP program consists of independent locally reactive ESTEREL nodes that communicate with each other by CSP rendezvous. CRP faithfully extends both ESTEREL and CSP and adds new possibilities such as precise local watchdogs on rendezvous. We present the design of CRP, its semantics, a translation into classical process calculi for program verification, and application example, and implementation issues.