Modelling Environments in Call-by-value Programming Languages

Paul Levy, AJ Power, Hayo Thielecke

Research output: Contribution to journalArticle

55 Citations (Scopus)


In categorical semantics, there have traditionally been two approaches to modelling environments, one by use of finite products in cartesian closed categories, the other by use of the base categories of indexed categories with structure. Each requires modifications in order to account for environments in call-by-value programming languages. There have been two more general definitions along both of these lines: the first generalising from cartesian to symmetric premonoidal categories, the second generalising from indexed categories with specified structure to kappa-categories. In this paper, we investigate environments in call-by-value languages by analysing a fine-grain variant of Moggi's computational lambda-calculus, giving two equivalent sound and complete classes of models: one given by closed Freyd categories, which are based on symmetric premonoidal categories, the other given by closed kappa-categories. (C) 2003 Elsevier Science (USA). All rights reserved.
Original languageEnglish
Pages (from-to)182-210
Number of pages29
JournalInformation and Computation
Publication statusPublished - 15 Sept 2003


Dive into the research topics of 'Modelling Environments in Call-by-value Programming Languages'. Together they form a unique fingerprint.

Cite this