You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The docs clearly say The precondition (input list is ascending) is not checked. so I think it's safe to say it was discussed. Would it be worth adding fromAscListChecked? Maybe. The point of this function is largely performance. If you don't know for certain that your input is ascending, you should use fromList.
It should be a matter of a few minutes to strengthen the constraint from Eq to Ord (a potentially breaking change; others' code may have to be modified to adjust, but likely not a lot of code will break, and the fix is always easy) and use compare instead of Eq. Then benchmark fromListWith with several element types and list lengths and see if we can get away with it performance-wise.
See also #981. I think it would make sense to have a Cabal flag that turns on precondition checks for debugging purposes, without needing to modify the calling code (in case it is deep inside some dependency).
Currently we have
since https://hackage.haskell.org/package/containers-0.6.0.1/docs/Data-Set.html#v:fromAscList does not check monotonicity. Should it? Could it? (I mean, how much extra time would this need?) Was this ever discussed?
(similar question: twanvl/multiset#9 (comment) )
The text was updated successfully, but these errors were encountered: