Modelling Environments in Call-by-value Programming Languages

Research output: Contribution to journalArticle

Authors

Colleges, School and Institutes

Abstract

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.

Details

Original languageEnglish
Pages (from-to)182-210
Number of pages29
JournalInformation and Computation
Volume185
Publication statusPublished - 15 Sep 2003