Can't find interface-file declaration for type constructor or class integer-gmp:GHC.Integer.Type.Integer

Johan Tibell johan.tibell at gmail.com
Fri Aug 19 11:13:55 CEST 2011


That sounds like another reason to keep things as they were. The
benefits of moving things around are internal to the package while the
downsides are external (breaking packages).

On Fri, Aug 19, 2011 at 11:09 AM, Lennart Augustsson
<lennart at augustsson.net> wrote:
> Also beware that Typeable uses the original names of types, which means that moving basic types around totally wrecks backwards compatibility for those of us who use the type name for serialization etc.
>
>   -- Lennart (iPhone)
>
> On Aug 19, 2011, at 11:00, Johan Tibell <johan.tibell at gmail.com> wrote:
>
>> These two parallel discussions are getting a bit confusing so I
>> suggest we continue the discussion on the ticket. :)
>>
>> On Fri, Aug 19, 2011 at 12:39 AM, Simon Peyton-Jones
>> <simonpj at microsoft.com> wrote:
>>> It's hard to know what Ian had in mind, but I'm sure he'll tell us when he gets back from holiday.
>>>
>>> Meanwhile, yes, it is hard to reconcile
>>> * The wish to have multiple implementations of Integer
>>> * The wired-in knowledge that GHC has
>>> * The desire to have optimising rewrite rules in client libraries
>>>
>>> I suggested one approach in the ticket earlier today; there might be others.  It might be good to figure out a good design before going much further into implementation.
>>>
>>> Simon
>>>
>>> |  -----Original Message-----
>>> |  From: Johan Tibell [mailto:johan.tibell at gmail.com]
>>> |  Sent: 18 August 2011 18:14
>>> |  To: Simon Peyton-Jones
>>> |  Cc: glasgow-haskell-users
>>> |  Subject: Re: Can't find interface-file declaration for type constructor or class
>>> |  integer-gmp:GHC.Integer.Type.Integer
>>> |
>>> |  On Thu, Aug 18, 2011 at 7:07 PM, Simon Peyton-Jones
>>> |  <simonpj at microsoft.com> wrote:
>>> |  > | I shouldn't have to modify PrelNames since I kept GHC.Integer.Type,
>>> |  > | no? Or does PrelNames have to contain the name of the module that
>>> |  > | originally defined the type?
>>> |  >
>>> |  > Yes, exactly!
>>> |
>>> |  This causes some trouble though, as the module named in PrelNames must
>>> |  exist in both in integer-gmp and integer-simple i.e. it must be some
>>> |  generic name like GHC.Integer.Type rather than a name containing e.g.
>>> |  GMP. I could keep the data type definition where it is
>>> |  (GHC.Integer.Type) but then I would have a hard time exporting it from
>>> |  e.g. GHC.Integer.GMP.Internals without undoing Ian's patch which
>>> |  removed the slightly odd GHC.Integer -> GHC.Integer.GMP.Internals ->
>>> |  GHC.Integer.Type module dependency in integer-gmp.
>>>
>>>
>>
>> _______________________________________________
>> Glasgow-haskell-users mailing list
>> Glasgow-haskell-users at haskell.org
>> http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
>



More information about the Glasgow-haskell-users mailing list