Chapter

Category Theory and Computer Science

Volume 953 of the series Lecture Notes in Computer Science pp 200-219

Date:

Decomposing typed lambda calculus into a couple of categorical programming languages

  • Masahito HasegawaAffiliated withLFCS, Department of Computer Science, University of Edinburgh, JCMB

* Final gross prices may vary according to local VAT.

Get Access

Abstract

We give two categorical programming languages with variable arrows and associated abstraction/reduction mechanisms, which extend the possibility of categorical programming [Hag87, CF92] in practice. These languages are complementary to each other — one of them provides a first-order programming style whereas the other does higher-order — and are “children” of the simply typed lambda calculus in the sense that we can decompose typed lambda calculus into them and, conversely, the combination of them is equivalent to typed lambda calculus. This decomposition is a consequence of a semantic analysis on typed lambda calculus due to C. Hermida and B. Jacobs [HJ94].