свой $. HLS подсказывает, что надо добавить fixity, в доке написано, что добавлять так. ОК. Минимальная правая assоциативность. Но дальше решаю по Ванье сделать оператор обратного применения:
(*>$>) :: a->(a->b)->b
infixl 0 *>$>
x *>$> f = f x
И тут я задумался — здесь должна быть левая ассоциативность или правая?..
x & f & g == (x & f) & g
Никакая не должна. Но может быть любая какую хочешь.
Я там правую поставил, потому что у $ правая по учебнику.
не потому что f $ g $ a == f $ (g $ a) ?
($) и (*>$>) — одни и то же?
Не. Сначала по учебнику, потом разбираться. Не наоборот :).
Не, (*>$>) это (&).
значит, нельзя применять довод "потому что по учебнику"
Значить таки левая!.. Предчувствие не обмануло!..
Я там поставил левую потому, что сработал/о cue — раз тут аргументы скармливаем в другом направлении, наверное и ассоциативность должна быть другая.
Не. Первое утверждение относится к первому определению, второе — ко второму.
Обсуждают сегодня