scispace - formally typeset
Open AccessProceedings Article

MODULAR CONCURRENCY - A New Approach to Manageable Software

TLDR
This paper proposes a programming paradigm based on processes that exchange messages that may be possible to provide the flexibility and expressiveness of programming with processes while bounding the complexity caused by hardware changes.
Abstract
Software systems bridge the gap between the information processing needs of the world and computer hardware As system requirements grow in complexity and hardware evolves, the gap does not necessarily widen, but it undoubtedly changes Although today’s applications require concurrency and today’s hardware provides concurrency, programming languages remain predominantly sequential Concurrent programming is considered too difficult and too risky to be practiced by “ordinary programmers” Software development is moving towards a paradigm shift, following which concurrency will play a fundamental role in programming In this paper, we introduce an approach that we believe will reduce the difficulties of developing and maintaining certain kinds of concurrent software Building on earlier work but applying modern insights, we propose a programming paradigm based on processes that exchange messages Innovative features include scale-free program structure, extensible modular components with multiple interfaces, protocols that specify the form of messages, and separation of semantics and deployment We suggest that it may be possible to provide the flexibility and expressiveness of programming with processes while bounding the complexity caused by

read more

Citations
More filters

Information Systems: Modelling, Sequencing and Transformations.

M. A. Jackson
TL;DR: In this paper, the authors propose a network of sequential processes communicating by serial data streams, which allows a clear representation of change or activity over time, and also prevents over-specification of sequencing by separating problem-oriented from solution-oriented sequencing constraints.
Proceedings ArticleDOI

A fair protocol for non-deterministic message passing

TL;DR: This work describes a fair protocol that allows arbitrary, non-deterministic communication amongst a set of processes connected by channels.
Proceedings ArticleDOI

Using Category Theory and Data Flow Analysis for Modeling and Verifying Properties of Communications in the Process-Oriented Language Erasmus

TL;DR: A methodology for modeling and verifying communications in a concurrent system developed in Erasmus, a process-oriented programming language, is proposed, and the innovative aspects include the use of category theory to model and verify properties of communications inErasmus.
Proceedings ArticleDOI

Implementing generalized alternative construct for erasmus language

TL;DR: This paper describes the design and implementation of the generalized alternative construct for the Erasmus programming language, and builds models based on the ACP algebra and uses the mCRL2 model checker to analyze and verify the models.
Dissertation

Communication and protocol satisfaction inerasmus

Nima Jafroodi
TL;DR: This thesis focuses on the efficient implementation of the CSP generalized alternative construct that allows a process to non-deterministically choose between several possible communication and the design and implementation of protocol satisfaction that allows the Erasmus compiler to statically check the safety of interprocess communication, and hence thesafety of a program.
References
More filters
Journal ArticleDOI

Communicating sequential processes

TL;DR: It is suggested that input and output are basic primitives of programming and that parallel composition of communicating sequential processes is a fundamental program structuring method.
Book

A calculus of communicating systems

Robin Milner
TL;DR: A case study in synchronization and proof techniques, and some proofs about data structures in value-communication as a model of CCS 2.0.
Book

Communicating and Mobile Systems: the Pi-Calculus

TL;DR: Communicating Systems: Behaviour of automata and Observation equivalence: theory, examples, and Discussion and related work Bibliography Index.
Book ChapterDOI

Cooperating sequential processes

TL;DR: This chapter is intended for all those who expect that in their future activities they will become seriously involved in the problems that arise in either the design or the more advanced applications of digital information processing equipment.