Good questions!

1) enum unfortunately uses int 

2) there’s no reason for there not to be lots of bijections! The barrier or obstacle I think you’re envisioning is if you want the bijection to preserve ordering. Right?

On Fri, Sep 18, 2020 at 2:34 PM Asad Saeeduddin <masaeedu@gmail.com> wrote:










This is something I've never understood about `Enum`. How can a

type be in bijection with the integers, but simultaneously have a

minimum and maximum bound?




On 9/18/20 10:40 AM, Oleg Grenrus

wrote:








Is it (a bug)?





What about [minBound .. maxBound]. If you change `Bounded`, you

need to change `Enum` too.





From

https://hackage.haskell.org/package/base-4.14.0.0/docs/GHC-Enum.html#t:Enum





- The calls succ maxBound and pred minBound should result in a

runtime error.


- enumFrom and enumFromThen should be defined with an implicit

bound



The `min` and `max` in `minBound/maxBound` are related to

`succ`, `pred`, not to `compare`. If you argue against, then we

should add `Ord` super-class to `Enum` (and `Bounded`).




- Oleg




On 18.9.2020 16.54, Carter Schonwald

wrote:








Def a bug! Plz at myself and the core libraries

handle for code review plz. 







This sounds kinda related to an MR that has

languished too long regarding the behavior of Down on Ord1,

which I think is related??? (I tried to arbitrate / layout

possible answers for the related issue in the associated mr,

but none of the clc members have engaged in the design space

challenge)







On Fri, Sep 18, 2020 at

7:44 AM David Beacham <mail@dbeacham.co.uk>

wrote:








Hi all,







The current instance for `Bounded a => Bounded

(Down a)` derives the `minBound` and `maxBound`

exactly as they are for the underlying type `a` where

I think they should be flipped to respect the flipped

ordering of `Down a`?







I have a feeling this has been come up in some

other context/list before but I couldn't find a

reference to it when searching - so sorry if this is a

duplicate.














Thanks, David.












_______________________________________________





Libraries mailing list





Libraries@haskell.org





http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries
















_______________________________________________

Libraries mailing list

Libraries@haskell.org

http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries










_______________________________________________

Libraries mailing list

Libraries@haskell.org

http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries









_______________________________________________

Libraries mailing list

Libraries@haskell.org

http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries