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