Комментарии 1
Можно упростить:
and = \x y. x y x
or = \x y. x x y
and true y = true y true = y
and false y = false y false = false
or true y = true true y = true
or false y = false false y = y
Разумеется, это абсолютно неустойчиво к ошибкам. Если мы вместо булевой константы подадим на вход and/or что-то другое, то на выходе получим произвольную ерунду.
and = \x y. x y x
or = \x y. x x y
and true y = true y true = y
and false y = false y false = false
or true y = true true y = true
or false y = false false y = y
Разумеется, это абсолютно неустойчиво к ошибкам. Если мы вместо булевой константы подадим на вход and/or что-то другое, то на выходе получим произвольную ерунду.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
λ-исчисление. Часть вторая: практика