Under consideration for publication in J. Functional Programming 1 Typed -calculi with one binder Summary: Under consideration for publication in J. Functional Programming 1 Typed -calculi with one binder Fairouz Kamareddine School of Mathematical and Computer Sciences, Heriot-Watt University, Riccarton, Edinburgh EH14 4AS, Scotland, http: // www. macs. hw. ac. uk/ ~fairouz Abstract Type theory was invented at the beginning of the twentieth century with the aim of avoiding the paradoxes which result from the self-application of functions. -calculus was developed in the early 1930s as a theory of functions. In 1940, Church added type theory to his -calculus giving us the influential simply typed -calculus where types were simple and never created by binders (or abstractors). However, realising the limitations of the simply typed -calculus, in the second half of the twentieth century we saw the birth of new more powerful typed -calculi where types are indeed created by abstraction. Most of these calculi use two binders and to distinguish between functions (created by -abstraction) and types (created by -abstraction). Moreover, these calculi allow -reduction but not -reduction. That is, (x:A.B)C B[x := C] is only allowed when is but not when it is . This means that, modern systems do not allow types to have the same instantiation right as functions. In particular, when b has type B, the type of (x:A.b)C is taken immediately to be B[x := C] instead of (x:A.B)C. Extensions of modern type