[ghc-steering-committee] Type annotated quoters (#125) --- recommendation: accept

Iavor Diatchki iavor.diatchki at gmail.com
Fri Jul 19 17:27:57 UTC 2019


It is a rather small change, but I think it could be handy.   I just
posted an example on GitHub, along the lines of what you were asking
for, have a look and see what you think.

On Fri, Jul 19, 2019 at 9:34 AM Simon Peyton Jones via
ghc-steering-committee <ghc-steering-committee at haskell.org> wrote:
>
> My current POV is that I think this feature is far far more limited than I originally thought -- and hence unattractive.  (I’ve posted on the discussion thread to that effect.)
>
>
>
> I’m willing to be educated!
>
>
>
> Simon
>
>
>
> From: ghc-steering-committee <ghc-steering-committee-bounces at haskell.org> On Behalf Of Sandy Maguire
> Sent: 11 July 2019 20:10
> To: ghc-steering-committee at haskell.org
> Subject: [ghc-steering-committee] Type annotated quoters (#125) --- recommendation: accept
>
>
>
> 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
>
> _______________________________________________
> ghc-steering-committee mailing list
> ghc-steering-committee at haskell.org
> https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee


More information about the ghc-steering-committee mailing list