2008•Unpublished venueOpen access

MODULAR CONCURRENCY - A New Approach to Manageable Software

Peter D. Grogono, Brian Shearing

Open full text 5 citations

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

About this research paper

What this paper is about

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

Why it matters

OpenAlex reports 5 citations for this work. Citation counts describe recorded attention and do not establish research quality.

Key contribution

A contribution statement is not available in the OpenAlex record.

Method / approach

Method details are not available in the OpenAlex metadata.

Main findings

Findings are not separately available in the OpenAlex metadata.

Limitations

Limitations are not available in the OpenAlex metadata.

Applications

Application details are not available in the OpenAlex metadata.

Available 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

Key concepts: Computer science, Concurrency, Modular design, Programming language, Software, Software engineering, Computer architecture

Related papers

Back to paper searchBrowse research topicsOriginal source
MODULAR CONCURRENCY - A New Approach to Manageable Software — Research Paper | ScholarLens