lukish 26.04.2012 15:14

Что значит выражение "время от времени"?

@djinn t → t
f a = a

Выходит, что id.

1. Elemir 26.04.2012 15:15 BitlBee

Бггг

2. Velvet-Bird 26.04.2012 15:15 emacs

иногда, мудак

3. Elemir 26.04.2012 15:15 BitlBee

Вообще ошибка очевидна — время это конкретный тип, а не полиморфный

4. lukishElemir /3 26.04.2012 15:18

id подходит всё равно

5. Elemirlukish /4 26.04.2012 15:20 BitlBee

Конечно нет, функции между рекурсивными типами неразрешимы. Посмотри на ":: [a] → [a]", например. Это может быть как id, так и reverse, например

6. lukishElemir /5 26.04.2012 15:24

> Конечно нет, функции между рекурсивными типами неразрешимы.
Что ещё значит "неразрешимы"? Кто мешает из какого-нибудь рекурсивного дерева построить аналогичное, путём инкремента всех узлов, например?
Да и приведённые тобой id с ревёрсом для листов.

Ну и да, f t = t и есть "время от времени", это и без джинна ясно. Что не так
?

7. Elemirlukish /6 26.04.2012 15:27 BitlBee

Тип называется разрешимым, если него типа существует ровно одна функции, удовлетворяющая ему. Тип 'forall a. a → a' разрешимый, например. И джинн в /0 разрешает именно его, а не тип 'Time → Time'

8. lukishElemir /7 26.04.2012 15:31

Ещё раз. Где начинается неподходимость id или f t = t + ГОД или ещё чего
?

9. Elemirlukish /8 26.04.2012 15:32 BitlBee

Хм, в том-то и проблема, что они подходят. Джинн — автопрувер, он не приемлим, когда у тебя есть больше одного решения

10. lukishElemir /9 26.04.2012 15:33

Наконец-то.

Do you really want to delete ?