Open
Description
I am okay with permitting orphan instances. However, I think they should be an error by default, so users will have to explicitly opt-in to them. The methods outlined in this blog post are probably relevant to this.
Declaring an orphan instance can probably be done via keyword in an instance
declaration, like this:
(instance #:orphan (Foo Bar) ...)
It should be an error to use #:orphan
when the instance isn’t actually an orphan instance to avoid redundant #:orphan
annotations. If this ever becomes a problem, we can probably weaken it to a warning.