Hi all,

Proposal 125 is on the topic of making quasiquoters which annotate the type of expression they produce. For example:

  qq :: TQuasiQuoter Int

which would work when used via

  foo :: Int
  foo = [qq|| blah ||]

but would be a type error (even before expanding the splice) in the context of

  bar :: String
  bar = [qq|| blah ||]

I'm in favor of this proposal. It's small, a natural extension to typed expressions+quasiquoters, and solves the very real problem of statically verifying literals at compile time.

The proposal is here: https://github.com/ghc-proposals/ghc-proposals/pull/125
and my recommendation is: https://github.com/ghc-proposals/ghc-proposals/pull/125#issuecomment-510612026

I have recommend a syntactic change that is *not* present in the original proposal text. It seems unfair to make the proposer jump through more hoops after a year of inactivity on this proposal.

As usual, silence will be considered assent!

Best,
Sandy