let id = λx.x shared = λa. let shared = λb. a (b id) in shared (shared id) in shared (shared id)