
Jonathan Cast wrote:
Flexible instances are extroardinarily useful:
I'm sure the GHC team wouldn't have bothered otherwise. ;-) AFAIK, "flexible instances" just means that absolutely anything can be a class instance, right?
instance Monad m => MonadState s (StateT s m) instance MonadState t m => MonadState (s, t) (StateT s m)
is a useful and not entirely insane instance scheme.
I hadn't realised this required FIs. (Although clearly it demands MPTCs.) Man, so many TLAs...
But yeah, anyone who uses class Silly in real life should be banned from coming within a 100 feet of any place where math, science, engineering, or software development is carried out or taught.
I don't know if it's necessary for the good of the Children, but we need to start thinking of the poor, defenseless computers as well...
Heh. And I thought *I* was crewl for making my poor PC use Peano integers rather than the [vastly more efficient] binary numbers...