If you don't mind your users wishing you death when they code breaks when they combine applicative style with do notation like: foo <- bar <$> baz <*> qux then sure, go ahead. Seriously, though, Andrew Gibiansky is right, use a newtype. Best regards, Marcin Mrotek