Функции Haskell слева направо

У меня есть функция, которую я использую довольно часто, и которая позволяет мне писать свой код таким образом, который кажется мне более естественным.

infixl 6 $:
($:) :: a -> (a -> b) -> b
a $: f = f a

Это позволяет мне делать что-то вроде

let x = getData
        $: sort
        $: group
        $: aggregate

вместо

let x = aggregate 
        $ group 
        $ sort 
        $ getData

. Недавно я узнал, что в Clojure встроено что-то подобное (я не очень хорошо разбираюсь в Clojure, но думаю, что это было бы написано (-> агрегат группы сортировки getData) ?), что заставляет меня задаться вопросом, встроен ли он также в Haskell. Однако в Hoogle нет результатов.

Существуют ли стандартные библиотеки с чем-то подобным? Вероятно, это затрудняет чтение моего кода для других, если у меня есть такая общая часть, которая является идиосинкразической.

18
задан Alex Miller 22 July 2016 в 21:55
поделиться