GHC support for the new "record" package

Joe Hillenbrand joehillen at gmail.com
Fri Jan 23 04:56:10 UTC 2015


On Jan 22, 2015 8:12 PM, "Johan Tibell" <johan.tibell at gmail.com> wrote:
>
>
>
> On Wed, Jan 21, 2015 at 5:48 PM, Simon Marlow <marlowsd at gmail.com> wrote:
>>
>> On 21/01/2015 16:01, Johan Tibell wrote:
>>>
>>> My thoughts mostly mirror those of Adam and Edward.
>>>
>>> 1) I want something that is backwards compatible.
>>
>>
>> Backwards compatible in what sense?  Extension flags provide backwards
compatibility, because you just don't turn on the extension until you want
to use it.  That's how all the other extensions work; most of them change
syntax in some way or other that breaks existing code.
>
>
> In this case in the sense of avoiding splitting code into a new-Haskell
vs old-Haskell. This means that existing records should work well (and
ideally also get the improved name resolution when used in call sites that
have the pragma enabled) in the new record system.
>

Sorry to chime in since I am not an expert or ghc contributor, but I can't
see how the new record system would break any existing valid Haskell code
even if it was added wholesale without a language extension (and without
special {|...|} syntax). I can see how expected behavior and error messages
would change, but not any existing records or accessors.

Would anyone mind explaining what would break?

Thank you.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/ghc-devs/attachments/20150122/0100ca4e/attachment.html>


More information about the ghc-devs mailing list