Idea (derived from Lennart's hbc compiler):
allow a class to be exported without its signature
Reason:
module M(f,C)
class C a where
op :: a -> a
f :: C a => a -> a
f x = op (op x)
We might reasonably want to export "f" but not "op". But C must be
exported so that modules importing f know about C. Simple solution
interface M
class C
f :: C a => a -> a
I don't know if I'm proposing this as a last-minute change to 1.2 (other
things being equal I'd rather not), but I'm broadcasting it anyway to see
if anyone sees any technical problems with this.
Simon