Size: a a a

2021 April 08

O

Ortofax in Haskell Start
int option list это, условно, List (Option Int)
источник

DB

Danil Berestov in Haskell Start
Концептуально все функции в кваскеле это функции одного аргумента именно поэтому a -> b -> c должно быть равно a -> (b -> c)
источник

WB

White Bear in Haskell Start
При левоассоциативности тоже так можно сделать
источник

DB

Danil Berestov in Haskell Start
явно расставляя скобки
источник

WB

White Bear in Haskell Start
Каррирование тут врядли причем
источник

O

Ortofax in Haskell Start
да нет, это как раз про каррирование
источник

DB

Danil Berestov in Haskell Start
с чего такой вывод?)
источник

O

Ortofax in Haskell Start
там Hom(a, c^b) ~ Hom(a*b, c), ну а c^b это b -> c
источник

WB

White Bear in Haskell Start
Если на уровне языка абстрагирование будет левоассоциативным а применение правоассоциативным
(a -> b) -> с, будет тем же что и a -> b -> c, и каррирование останется
источник

DB

Danil Berestov in Haskell Start
ну и зачем академию такую разводить!
источник

WB

White Bear in Haskell Start
Только тогда бы еще больше людей путалось
источник

DB

Danil Berestov in Haskell Start
Вообще не понимаю, в чём вопрос))) Это же супер удобно. Есть идея что все функции — от одного аргумента. Хочется записывать типы без мучений. Поэтому a -> b -> c  == a -> (b -> c)
источник

DB

Danil Berestov in Haskell Start
Какой дополнительный смысл вы пытаетесь искать?
источник

WB

White Bear in Haskell Start
Вопрос был в том что делает -> насколько я понял изначально
источник

WB

White Bear in Haskell Start
А в ходе ответа на него пошло все остальное
источник

DB

Danil Berestov in Haskell Start
конструирует тип. Так же как и Either, Maybe и всё остальное
источник

O

Ortofax in Haskell Start
ага, имея один конструктор функционального типа можно построить тип функции скольки угодно аргументов (с практической, не теоретической точки зрения)
источник

И

Иван in Haskell Start
ок вот ход моих мыслей, подскажите что с ним не так
1. раз мы находимся в анотации типа то -> является конструктором типа а не оператором
2. Хотя как конструктор типа может быть правоасоциативен? Наверно это все таки оператор??
3. Чем бы это ни было, но если утверждается что -> правоасоциатевен то тип int -> int -> int превращается в int -> (int -> int)
4. Ассоциативность это последовательнось выполнения какой то операции
5. Операция -> это конструирование новго типа??
6. Что означает конструирование нового типа в такой последовательности  int -> (int -> int) ???
источник

И

Иван in Haskell Start
на таком уровне все прекрасно понятно
источник

O

Ortofax in Haskell Start
1. операторы могут быть конструкторами типов
2. операторы на уровне типов правоассоциативны если они начинаются с : или если они ->
3. да
4. типа того, последовательность расстановки скобок в выражении
5. да
6. то же, что в последовательности F Int (F Int Int)
источник