Есть ли типизированное исчисление SKI?

26

Большинство из нас знает соответствие между комбинаторной логикой и лямбда-исчислением . Но я никогда не видел (может быть, я недостаточно глубоко изучил) эквивалент «типизированных комбинаторов», соответствующих простейшему типу лямбда-исчисления. Существует ли такая вещь? Где можно найти информацию об этом?

Уго Серено Феррейра
источник
Возможно, вас заинтересует Устранение монады и абстракции в The Monad.Reader, выпуск 17 . Монада Reader (или, точнее, ее аппликативный функтор) тесно связана с типизированным SKI.
Петр Пудлак

Ответы:

18

Была продемонстрирована выразительная полнота типизированных комбинаторов по сравнению с простейшим типом лямбда-исчисления . Для каждого нетипизированного комбинатора требуется целое семейство типизированных комбинаторов. Например, один имеет

  • Iαα
  • Kα(βα)
  • Sα(βγ)(αβ(αγ))

для всех комбинаций простых типов и γ .α,βγ

В качестве альтернативы, просто представьте типы как схемы типов (или полиморфные типы) и введите их в Haskell и вуаля: комбинаторы .

Дэйв Кларк
источник
Я никогда не думал, что комбинатор действует как монада! Это так? S
Уго Серено Феррейра
На самом деле, я указал, что соответствует оператору Аппликативные функторов и в K . S<*>pureK
Уго Серено Феррейра
вполне фундаментален, поэтому может соответствовать многим вещам. S имеет тот же тип, чтофункция монадного р для функтора Л X . & alpha ; Х . SSapΛX.αX
Дейв Кларк