Arrow Research search
Back to I&C

I&C 2000

Compositionality in Dataflow Synchronous Languages: Specification and Distributed Code Generation

Journal Article journal-article Computer Science · Theoretical Computer Science

Abstract

Modularity is advocated as a solution for the design of large systems; the mathematical translation of this concept is often that of compositionality. This paper is devoted to the issues of compositionality for modular code generation, in dataflow synchronous languages. As careless reuse of object code in new or evolving system designs fails to work, we first concentrate on what are the additional features needed to abstract programs for the purpose of code generation: we show that a central notion is that of scheduling specification as resulting from a causality analysis of the given program. Using this notion, we study separate compilation for synchronous programs. An entire section is devoted to the formal study of causality and scheduling specifications. Then we discuss the issue of distributed implementation using an asynchronous medium of communication. Our main results are that it is possible to characterize those synchronous programs which can be distributed on an asynchronous architecture without loosening semantic properties. Two new notions of endochrony and isochrony are introduced for this purpose. As a result, we derive a theory for synthesizing additional schedulers and protocols needed to guarantee the correctness of distributed code generation. Corresponding algorithms are implemented in the framework of the DC+ common format for synchronous languages, and the V4 release of the S IGNAL language.

Authors

Keywords

  • synchronous languages
  • modularity
  • distributed code generation
  • separate compilation
  • desynchronization

Context

Venue
Information and Computation
Archive span
1987-2026
Indexed papers
3021
Paper id
339485997703952948
v2026.09.13