Zコンビネータ

Z = fn(f, fn(x, fn(m, f call(x call(x)) call(m))) call(fn(x, fn(m, f call(x call(x)) call(m)))))
Z(fn(f, fn(n, if(n < 2, n, f(n-1) + f(n-2))))) call(7) ; +> 13

受け売りです。フィボナッチ。
callじゃなく、直接()で呼べれば楽になるだろーけど、できるのかな。そうすると、λ=fnとして

Z = λ(f, λ(x, λ(m, f(x(x))(m)))(λ(x, λ(m, f(x(x))(m)))))

みたいに書けるかも。そうなると楽しい。