I think it may also lead to cleaner code. I would rather write a single section like this:

#if NEW_GHC
{-# bunch of OVERLAPPABLE declarations #-}
#endif

at the start of the file rather than have to insert a lot of CPP-guarded pragmas later. But it may be seen as an editor/IDE issue and bikeshedding on the whole.

--
Krzysztof


On Tue, Jul 29, 2014 at 12:48 PM, Johan Tibell <johan.tibell@gmail.com> wrote:
On Tue, Jul 29, 2014 at 12:37 PM, Daniel Trstenjak
<daniel.trstenjak@gmail.com> wrote:
>
> On Tue, Jul 29, 2014 at 12:02:19PM +0200, Johan Tibell wrote:
>> What's the rationale to not require
>>
>> {-# OVERLAPPING Show [Char] #-}
>>
>> here? Perhaps it's too annoying to have to repeat the types?
>
> This one might be written at the top of the file, so it would be easier
> to overlook it, than having it directly at the instance declaration,
> which seems to be one of the major points for OVERLAPPING and OVERLAPPABLE.

The same could be said for e.g. INLINE. The extra flexibility is nice
to have (e.g. because you can opt to put the pragma after the
declaration, to de-emphasize it.)
_______________________________________________
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users