clamp function in base

Emily Pillmore emilypi at cohomolo.gy
Sat Aug 15 15:22:07 UTC 2020


+1, though, David has good points about unnecessary laziness. I'm fine with the name and the signature

```
clamp :: Ord a ⇒ (a,a) → a → a
```

(or some variation on the theme).

On Fri, Aug 14, 2020 at 5:38 PM, Sandy Maguire < sandy at sandymaguire.me > wrote:

> 
> Hi all,
> 
> 
> It seems to me that base is missing the very standard function `clamp ::
> Ord a => a -> a -> a -> a`:
> 
> 
> ```haskell
> clamp :: Ord a => a -> a -> a -> a
> clamp low high = min high .max low
> 
> ```
> 
> 
> I propose it be added to Data.Ord. It's useful, generic, and non-trivial
> to get right (the "big" number goes with "min" -- causes me cognitive
> dissonance every time.)
> 
> 
> Thanks,
> 
> Sandy
> 
> 
> _______________________________________________
> Libraries mailing list
> Libraries@ haskell. org ( Libraries at haskell.org )
> http:/ / mail. haskell. org/ cgi-bin/ mailman/ listinfo/ libraries (
> http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries )
> 
> 
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/libraries/attachments/20200815/e94a692e/attachment.html>


More information about the Libraries mailing list