Partial-evaluation techniques for concurrent programs

Mihnea Marinescu, Benjamin Goldberg

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

This paper presents an application of partial evaluation (program specialization) techniques to concurrent programs. The language chosen for this investigation is a very simple CSP-like language. A standard binding-time analysis for imperative languages is extended in order to deal with the basic concurrent constructs (synchronous communication and nondetermin-istic choice). Based on the binding-time annotations, a specialization transformation is defined and proved correct. In order to maintain a simple and clear presentation, the specialization algorithm addresses only the data transfer component of the communication; partial evaluation, the way it is defined here, always generates residual synchronizations. However, a simple approximate analysis for detecting and removing redundant synchronizations from the residual program (i.e. synchronizations whose removal does not increase the nonde-terminism of a program) can be performed. The paper also addresses pragmatic concerns such as improving the binding-time analysis, controlling loop unrolling and the consequences of lifting nondeterminism from run-time to specialization-time. Finally, the power of the newly developed technique is shown in several examples.

Original languageEnglish (US)
Title of host publicationProceedings of the 1997 ACM SIGPLAN Symposium on Partial Evaluation and Semantics-Based Program Manipulation, PEPM 1997
PublisherAssociation for Computing Machinery
Pages47-62
Number of pages16
ISBN (Print)0897919173, 9780897919173
DOIs
StatePublished - 1997
Event1997 ACM SIGPLAN Symposium on Partial Evaluation and Semantics-Based Program Manipulation, PEPM 1997 - Amsterdam, Netherlands
Duration: Jun 12 1997Jun 13 1997

Publication series

NameProceedings of the ACM SIGPLAN Symposium on Partial Evaluation and Semantics-Based Program Manipulation

Other

Other1997 ACM SIGPLAN Symposium on Partial Evaluation and Semantics-Based Program Manipulation, PEPM 1997
CountryNetherlands
CityAmsterdam
Period6/12/976/13/97

Keywords

  • Binding-time analysis
  • CSP
  • Concurrency
  • Nondeterminism
  • Partial evaluation

ASJC Scopus subject areas

  • Software

Fingerprint Dive into the research topics of 'Partial-evaluation techniques for concurrent programs'. Together they form a unique fingerprint.

Cite this