Overlapping and incoherent and intentionally omitted instances

Henning Thielemann schlepptop at henning-thielemann.de
Sun Aug 10 14:19:00 UTC 2014


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?



More information about the Libraries mailing list