Specification for reactive bulk-synchronous programming

  • Authors:
  • Yifeng Chen

  • Affiliations:
  • Oxford University Computing Laboratory, Oxford, UK

  • Venue:
  • EURO-PDP'00 Proceedings of the 8th Euromicro conference on Parallel and distributed processing
  • Year:
  • 2000

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper extends BSP to incorporate reactive (i.e. nonterminating) programming. We propose a semantic model for BSP which allows a process to have infinitely many supersteps. The semantics turns out to reveal the essential difference between BSP and sequential specifications. Based on the model, a specification language (called SSS) is proposed to support modularised programming and hide communication and synchronisation details in specification. The notion of public variable is proposed to substantially simplify reactive programming. The normal forms of BSP and SSS are identified and complete sets of laws for the two languages are given. Finally, a few refinement laws are used to provide a BSP treatment of the dining-philosopher problem which illustrates the power of BSP reactive programming. Much of the formalism presented in this paper can also be applied to non-reactive programming.