úÎ! × Á!Declare that a typeclass instanceF(c) 2017, Commonwealth Scientific and Industrial Research OrganisationBSD3jack.kelly@data61.csiro.au experimental Non-PortableNone"#.UV µ ban-instance²Ban an instance of a typeclass; code which tries to use the banned instance will fail at compile time. This works by generating an instance that depends on a custom type error: 2instance TypeError (..) => ToJSON Foo where ... Use it like this: H$(banInstance [t|ToJSON Foo|] "why ToJSON Foo should never be defined")  ban-instanceFThe instance you want to ban. Most easily written with a type-quote: [t|ToJSON Foo|] ban-instance(The reason that this instance is banned.+ban-instance-0.1.0.0-6MOQTxmj6oT7LaSBVVCt3pLanguage.Haskell.Instance.Ban banInstance