template-haskell depends on packedstring
marlowsd at gmail.com
Mon May 18 08:07:06 EDT 2009
On 01/12/2008 00:04, Duncan Coutts wrote:
> On Sun, 2008-11-30 at 18:37 -0500, Gwern Branwen wrote:
>>> Ah, I see. I'd not looked that closely. It's this bit you're referring
>>> type OccName = PackedString
>>> mkOccName :: String -> OccName
>>> occString :: OccName -> String
>>> type ModName = PackedString
>>> mkModName :: String -> ModName
>>> modString :: ModName -> String
>>> type PkgName = PackedString
>>> mkPkgName :: String -> PkgName
>>> pkgString :: PkgName -> String
>>> Technically that's not an abstract api so changing the type alias could
>>> break programs, though I agree that it may be unlikely.
>> I would argue that it's less unlikely than richly deserved. :) (I find
>> it difficult to imagine why a TH hacker would deliberately tunnel
>> through the alias, personally.)
>>>> Unless there's some sort of low-level binary API compatibility you are
>>>> referring to?
>>> No, just the source level API.
>> OK. Is the previous issue a fatal objection or can we just make the
>> change and upload a new TH?
> How about making a library proposal to change them to abstract newtypes,
> then we can change the internal representation at will.
> I would not object to that, but then I'm not a TH hacker and they
> deserve the chance to comment.
It's a simple change, and we really ought to drop the packedstring
package. I'll make a proposal.
More information about the Libraries