
Hello, Such a pragma sounds useful, and is very much like the "fails" instance from the "Instance chains" paper. You may also be interested in ticket #9334 (https://ghc.haskell.org/trac/ghc/ticket/9334), which proposes an alternative to overlapping instances, and I just updated it to point to #7775. -Iavor On Sun, Aug 10, 2014 at 7:19 AM, Henning Thielemann < schlepptop@henning-thielemann.de> wrote:
Am 29.07.2014 um 12:02 schrieb Johan Tibell:
P.S. For e.g. INLINABLE we require that you mention the function name
next to the pragma (which means that you can e.g. put the pragma after the declaration). What's the rationale to not require
{-# OVERLAPPING Show [Char] #-}
here? Perhaps it's too annoying to have to repeat the types?
Once I proposed a pragma for documenting intentionally unimplemented instances. In this case there is no instance you can write a pragma in front of. Your OVERLAPPING syntax would be conform with the one of NOINSTANCE:
https://ghc.haskell.org/trac/ghc/ticket/7775
Maybe NOINSTANCE can be reconsidered in the course of the introduction of the OVERLAP pragma?