 The two styles of typing have quite a lot in common, but there are certain differences between them. In particular, no self-application is typable in a Church-style typing system, whereas some of those terms can be assigned a type in a Curry-style typing system. Curry-style typing systems proved very useful in establishing various properties of CL and \(\lambda\)-calculi. The Church-style typing, on the other hand, emulates more closely the typing in certain functional programming languages (without objects).