Skip to content

Stop using PackedString in template-haskell; drop packedstring as a bootlib

The packedstring library has been superseded by the bytestring and text libraries, yet we are still shipping it with GHC for only one reason: it is used in the representations of three types in template-haskell.

The proposal is that we

  • make the types ModName, PkgName, and OccName from Language.Haskell.TH.Syntax into abstract newtypes (an API change)
  • change their representation from PackedString to String
  • drop the packedstring library from the bootlibs that GHC ships with

Relevant discussions:

Trac metadata
Trac field Value
Version 6.10.2
Type Bug
TypeOfFailure OtherFailure
Priority normal
Resolution Unresolved
Component None
Test case
Differential revisions
BlockedBy
Related
Blocking
CC
Operating system
Architecture
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information