
Would it be OK if they added the OVERLAPPING pragma first and then I change my library to use OVERLAPPABLE?
I think so, yes. Does that not work? Is it bad? Do you think the semantics is wrong?
Simon
From: Johan Tibell [mailto:johan.tibell@gmail.com]
Sent: 25 August 2015 13:19
To: Simon Peyton Jones
Cc: ghc-devs@haskell.org
Subject: Re: OVERLAPPABLE/OVERLAPPING/OVERLAPS pragmas are confusing
The proposed change to my library is here: https://github.com/tibbe/cassava/pull/95/files
We remove the OverlappingInstances pragma and instead add an OVERLAPPABLE pragma like so:
instance {-# OVERLAPPABLE #-} FromField a => FromField (Maybe a) where
This causes clients of the library that previously compiled (e.g. the music-parts package) to no longer compile, due to a now lacking OVERLAPPING pragma in their code.
The issue here is I'm trying to the right thing (move to new pragmas), but that causes clients to fail to compile. My question is: how do we avoid that? Would it be OK if they added the OVERLAPPING pragma first and then I change my library to use OVERLAPPABLE?
On Tue, Aug 25, 2015 at 1:25 PM, Simon Peyton Jones