Как я должен прибегать к ситуациям, когда я знаю тип необходимой функции, но еще не определен? Я подозреваю, что функция, которую я ищу, легко скомпонована у других, но я не знаю, с чего начать.Как построить «недостающие» сложные функции в Haskell
Prelude> :hoogle (b->b->c)->(a->b)->(a->b)->a->a->c
No results found
Чтобы быть более конкретным, я (b->b->c)
функции под руку, но мне нужно обрабатывать (поднять, может быть?) Аргументы первым. Могут ли hoogle находить функции с аргументами в другом порядке, чем указано?
Это близко к тому, что мне нужно, но я хочу применить различные функции к каждому аргументу.
Prelude Data.Function> :t on
on :: (b -> b -> c) -> (a -> b) -> a -> a -> c
Я столкнулся с ситуациями, когда мне нужно передать специализированные функции равенства или сравнения в другие, и вот что-то вроде этого очень удобно (я фактически использовал функцию «on» .... Мне никогда не приходилось on2, но я уверен, что есть случаи). Без on2 вы должны использовать лямбду, которую мне труднее читать. – jamshidh