> > If you also read the rest of that thread, you'll see that with a recent > GHC HEAD, you should be able to avoid the need for the Teq witness. > http://www.cs.chalmers.se/~rjmh/Papers/restricted-datatypes.ps here is solution which doesn't require GADT and HEAD, but it does require changing of monad interface. This trick is used in SYB3.