We make an argument that, for any study involving computational effects such as divergence or continuations, the traditional syntax of simply typed lambda-calculus cannot be regarded as canonical, because standard arguments for canonicity rely on isomorphisms that may not exist in an effectful setting. To remedy this, we define a “jumbo lambda-calculus” that fuses the traditional connectives together into more general ones, so-called “jumbo connectives”. We provide two pieces of evidence for our thesis that the jumbo formulation is advantageous.
Firstly, we show that the jumbo lambda-calculus provides a “complete” range of connectives, in the sense of including every possible connective that, within the beta-eta theory, possesses a reversible rule.
Secondly, in the presence of effects, we show that there is no decomposition of jumbo connectives into non-jumbo ones that is valid in both call-by-value and call-by-name.
Unable to display preview. Download preview PDF.
- [GLT88]Girard, J.-Y., Lafont, Y., Taylor, P.: Proofs and Types. In: Cambridge Tracts in Theoretical Computer Science 7, Cambridge University Press, Cambridge (1988)Google Scholar
- [McC96a]McCusker, G.: Full abstraction by translation. In: Proc, 3rd Workshop in Theory and Formal Methods, Imperial College, London (1996)Google Scholar
- [McC96b]McCusker, G.: Games and Full Abstraction for a Functional Metalanguage with Recursive Types. PhD thesis, University of London (1996)Google Scholar
- [Mog89]Moggi, E.: Computational lambda-calculus and monads. In: LICS 1989, Proc. 4th Ann. Symp. on Logic in Comp. Sci, pp. 14–23. IEEE, Los Alamitos (1989)Google Scholar
- [Pit00]Pitts, A.M.: Categorical logic. In: Handbook of Logic in Computer Science, vol. 5, Oxford University Press, Oxford (2000)Google Scholar