[ghc-steering-committee] [Proposal] #175: Lift.liftTyped (recommendation: accept)

Ben Gamari ben at well-typed.com
Mon Nov 5 18:37:27 UTC 2018


Hi everyone,

I have been asked to Shepard #175, which proposes to add a `liftTyped`
method to the `Lift` typeclass used to lift Haskell values into Template
Haskell splices. Currently the `Lift` typeclass provides no guarantee of
type-safety, even when used in a Typed Template Haskell context.

The proposal resolves this limitation by adding a typed lifting
operation to the `Lift` class:
    
    class Lift t where
      lift :: t -> Q Exp
      liftTyped :: t -> Q (TExp t)

While this addition will break manually-written `Lift` instances, we
recommended that users derive such instances for quite a while now, so
it is not expected that the breakage will be wide-spread. In light of
this, I recommend that we accept this proposal.

Given that we will likely want to get this in to 8.8, I suggest that we
limit the discussion to a week unless there is dissent.

Cheers,

- Ben
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 487 bytes
Desc: not available
URL: <http://mail.haskell.org/pipermail/ghc-steering-committee/attachments/20181105/39efb508/attachment.sig>


More information about the ghc-steering-committee mailing list