Proposal: Implement minimumOn, maximumOn to mirror sortOn
Eric Mertens
emertens at gmail.com
Tue Oct 30 00:09:04 UTC 2018
Having the consistency with `sortOn` seems like a win, but the reason we
have `sortOn` is that the implementation is not completely trivial. It has
to be ever so slightly smart to reuse the projections when sorting.
On the other hand, we have the definitions:
minimumOn = minimumBy . comparing
maximumOn = maximumBy . comparing
It’s not obvious to me that this needs its own name instead of simply
mentioning that `comparing` exists in the haddock documentation for
`minimumBy` and `maximumBy`.
Is it a foregone conclusion that we should maintain consistency with
`minimum` and `maximum` on their result types? I consider these types
mistakes and would have preferred to see `Maybe` involved.
minimumOn :: (Foldable t, Ord b) => (a -> b) -> t a -> Maybe a
I’m not sure why it makes sense to force ourselves into returning an
imprecise exception in the empty list case.
Best regards,
Eric Mertens
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/libraries/attachments/20181029/533133a1/attachment.html>
More information about the Libraries
mailing list