Присоединюсь, интересный вопрос. Люблю темы FP, но совершенно не слежу, так что не знаю, есть ли что-то интересное кроме тьюринг-полноты и детальки о том, чему соответствуют комбинаторы по Карри—Говарду (импликативному фрагменту интуиционистской логики — содержащему не больше, чем нужно для теоремы о дедукции), но какой от них толк самих по себе, не представляю.
например, по лямбда-исчислению я бы показал на примерах различие нормальной и аппликативной редукционных стратегий с возможным расхождением и выводами насчет практического применения
Тут тоже можно подумать о разных стратегиях, только не помню, не эквивалентны ли они.
Быстрая проверка: определим
, тогда при стратегии call by value при вычислении
не остановимся, а при нормальной или, например, call by need, остановимся, если
не редуцируется. Значит, не эквивалентны.
-- Чт ноя 22, 2018 00:36:25 --Вообще в текстах именно про комбинаторное исчисление (а не про лямбда-исчисление) обычно рассказывают, как на нём можно достаточно сносно выразить разные виды данных (пары, натуральные числа такие и сякие, логические значения). Самостоятельной пользы от этого нет, хотя, видимо, возможность такого выражения интереснее просто тьюринг-полноты (или нет — может, во всяком тьюринг-полном формализме можно найти соответствующие трюки). Можно запутать людей загадочным «логическим» термом
(привет парадоксу лжеца).
Хотя к сожалению кодирование данных (и разные способы) более прозрачно на языке лямбда-исчисления. Пока мы вынуждены выражать все комбинаторы через какой-то небольшой базис, это очень непрозрачно; если не вынуждать себя, куда ни шло.
-- Чт ноя 22, 2018 00:49:48 --Вру про Карри—Говарда, для того исчисление комбинаторов должно быть не абы каким, а
типизированным, то есть аппликации можно составлять и комбинаторы рассматривать не произвольные.
-- Чт ноя 22, 2018 00:51:15 --В общем, лучше свериться с литературой, если захочется эту деталь рассказывать.