Compiling the π-calculus into a Multithreaded Typed Assembly Language

  • Authors:
  • Tiago Cogumbreiro;Francisco Martins;Vasco T. Vasconcelos

  • Affiliations:
  • Department of Informatics, Faculty of Sciences, University of Lisbon, Portugal;Department of Informatics, Faculty of Sciences, University of Lisbon, Portugal;Department of Informatics, Faculty of Sciences, University of Lisbon, Portugal

  • Venue:
  • Electronic Notes in Theoretical Computer Science (ENTCS)
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

We extend a previous work on a multithreaded typed assembly language (MIL) targeted at shared memory multiprocessors, and describe the design of a type-preserving compiler from the @p-calculus into MIL. The language enforces a policy on lock usage through a typing system that also ensures race-freedom for typable programs, while allowing for typing various important concurrency patterns. Our translation to MIL generates code that is then linked to a library supporting a generic unbounded buffer monitor, variant of Hoare's bounded buffer monitor, entirely written in MIL. Such a monitor shields client code (the @p-calculus compiler in particular) from the hazardous task of direct lock manipulation, while allowing for the representation of @p-calculus channels. The compiler produces type correct MIL programs from type correct source code, generating low-contention cooperative multithreaded programs.