`Char` is defined in user code. What you really can't define are Char# and TYPE, and you can't modify `RuntimeRep`. Speaking of `Char#`, I see that in 9.0, at least, it has kind TYPE 'WordRep. Why is that not Word32Rep?
On Mon, Apr 5, 2021, 10:50 PM Richard Eisenberg <r...@richarde.dev> wrote: > > > On Apr 1, 2021, at 8:12 PM, Anthony Clayden <anthony_clay...@clear.net.nz> > wrote: > > Can I user-define a conventional type-class that behaves more like `(~)`? > > > I don't think so. > > But why does this matter? I can't define `Char` in user code, but it's > exported from the Prelude and requires no extensions. While I can define Eq > in user code, I can't make `deriving` work with my version. I can't define > `error` in user code. There are many others, I'm sure. > > So: why does this matter? > > Thanks, > Richard > _______________________________________________ > Glasgow-haskell-users mailing list > Glasgow-haskell-users@haskell.org > http://mail.haskell.org/cgi-bin/mailman/listinfo/glasgow-haskell-users >
_______________________________________________ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/glasgow-haskell-users