Flexibility and coordination in event-based, loosely coupled, distributed systems

  • Authors:
  • B. Silvestre;S. Rossetto;N. Rodriguez;J. -P. Briot

  • Affiliations:
  • Depto Informática, Pontifical Catholic University of Rio de Janeiro (PUC-Rio), 22451-900, Brazil;Universidade Federal Fluminense (UFF), Brazil;Depto Informática, Pontifical Catholic University of Rio de Janeiro (PUC-Rio), 22451-900, Brazil;LIP6-Paris6, France and Depto Informática, Pontifical Catholic University of Rio de Janeiro (PUC-Rio), 22451-900, Brazil

  • Venue:
  • Computer Languages, Systems and Structures
  • Year:
  • 2010

Quantified Score

Hi-index 0.03

Visualization

Abstract

The scale and diversity of interactions in current wide-area distributed programming environments, specially in Internet-based applications, point to the fact that there is no single solution for coordinating distributed applications. Instead, what is needed is the ability to easily build and combine different coordination abstractions. In this paper, we discuss the role of some language features, such as first-class function values, closures, and coroutines, in allowing different coordination mechanisms to be constructed out of a small set of communication primitives, and to be easily mixed and combined. Using the Lua programming language, we define a basic asynchronous primitive, which allows programming in a direct event-driven style with the syntax of function calls, and, based on this primitive, we build different well-known coordination abstractions for distributed computing.