Control categories and duality: on the categorical semantics of the lambda-mu calculus

  • Authors:
  • Peter Selinger

  • Affiliations:
  • Department of Mathematics, University of Michigan, Ann Arbor, MI 48109-1109, U.S.A. Email: selinger@umich.edu

  • Venue:
  • Mathematical Structures in Computer Science
  • Year:
  • 2001

Quantified Score

Hi-index 0.00

Visualization

Abstract

We give a categorical semantics to the call-by-name and call-by-value versions of Parigot's λμ-calculus with disjunction types. We introduce the class of control categories, which combine a cartesian-closed structure with a premonoidal structure in the sense of Power and Robinson. We prove, via a categorical structure theorem, that the categorical semantics is equivalent to a CPS semantics in the style of Hofmann and Streicher. We show that the call-by-name λμ-calculus forms an internal language for control categories, and that the call-by-value λμ-calculus forms an internal language for the dual co-control categories. As a corollary, we obtain a syntactic duality result: there exist syntactic translations between call-by-name and call-by-value that are mutually inverse and preserve the operational semantics. This answers a question of Streicher and Reus.