definition module StringAppender import StdEnv :: StringAppender newAppender :: StringAppender append :: StringAppender a -> StringAppender | toString a joinList :: !String [a] StringAppender -> StringAppender | toString a instance toString StringAppender class Appendable a where (<++) infixl 1 :: StringAppender a -> StringAppender instance Appendable String instance Appendable Int instance Appendable Real instance Appendable (StringAppender -> StringAppender)