Add StringPrimL to template-haskell
In designing a template haskell lexer, you cannot get the same performance as alex, due to the fact that you cannot encode a "string"# literal to house the lookup tables for the encoded lexer.
Proposal: add "string"# literals to template-haskell as StringPrimL (or another suitable constructor) to Lit.
Then the quasiquoter can emit a data type that contains Addr# references to the link-time-locatable "string"#s permitting constant folding and inlining away the particular link time choice of Addr#.
Trac metadata
| Trac field | Value |
|---|---|
| Version | 6.12.3 |
| Type | FeatureRequest |
| TypeOfFailure | OtherFailure |
| Priority | normal |
| Resolution | Unresolved |
| Component | Compiler |
| Test case | |
| Differential revisions | |
| BlockedBy | |
| Related | |
| Blocking | |
| CC | |
| Operating system | |
| Architecture |