"M"中并没有定义"f"名称，因为"M"不在绑定"f"的lambda抽象范畴之内；这意味着递归函数定义不能以let来使用"M"。更进步的letrec语法糖允许以直觉的方式编写递归函数定义，而不需用到不动点组合子。
递归与不动点.递归是使用函数自身的函数定义；在表面上，lambda演算不允许这样。但是这种印象是误解。考虑个例子，阶乘函数f(n)递归的定义为在lambda演算中，你不能定义包含自身的函数。要避免这样，你可以开始于定义一个函数，这里叫g，它接受一个函数f作为参数并返回接