Proposal: Determining whether a Bits instance is FiniteBits
Zemyla <[email protected]>
| Newsgroups | gmane.comp.lang.haskell.libraries |
|---|---|
| Message-ID | <CAK7nUjh9yp-ys7xXxxP65J0dXb9UGujx+R3+Gw4n0zxHLqnDWw@mail.gmail.com> |
Every Bits instance has to know that whether it's a FiniteBits instance as well, due to bitSizeMaybe. Therefore, it should also be able to tell a program that it is in fact a FiniteBits instance. There should be a function added to Data.Bits.Bits: withFiniteBits :: Bits a => a -> (FiniteBits a => r) -> r -> r The default should be withFiniteBits _ _ x = x, at least for the next several versions. bitSizeMaybe can be defined as bitSizeMaybe x = withFiniteBits x (Just (finiteBitSize x)) Nothing once everyone is on board with properly defining the value. _______________________________________________ Libraries mailing list [email protected] http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries