[GHC] #10697: Change template-haskell API to allow NOUNPACK, lazy annotations

GHC ghc-devs at haskell.org
Sun Dec 13 03:22:33 UTC 2015


#10697: Change template-haskell API to allow NOUNPACK, lazy annotations
-------------------------------------+-------------------------------------
        Reporter:  RyanGlScott       |                Owner:
            Type:  feature request   |               Status:  patch
        Priority:  normal            |            Milestone:
       Component:  Template Haskell  |              Version:  7.10.1
      Resolution:                    |             Keywords:
Operating System:  Unknown/Multiple  |         Architecture:
                                     |  Unknown/Multiple
 Type of failure:  None/Unknown      |            Test Case:
      Blocked By:                    |             Blocking:
 Related Tickets:  #5290, #8347      |  Differential Rev(s):  Phab:D1603
       Wiki Page:                    |
-------------------------------------+-------------------------------------

Comment (by RyanGlScott):

 By the way, I'm open to ideas on what to color the bikeshed:

 * I'm not sure if `SourceStrictness` and `SourceUnpackedness` should have
 three constructors each, or if we should just remove
 `NoSourceStrictness`/`NoSourceUnpackedness` and just use `Nothing` to
 represent a lack of an annotation (e.g., `Just SourceStrict` for a `!`
 annotation, `Nothing` for no annotation).
 * What to name `SourceStrictness` and `SourceUnpackedness`. Other names I
 contemplated were `data AnnStrictness = StrictAnnotation | LazyAnnotation
 | NoStrictnessAnnotation` and `data AnnUnpackedness = NoUnpackAnnotation |
 UnpackAnnotation | NoUnpackednessAnnotation`.
 * What to name `DecidedStrictness`. I also considered `data ImplStrictness
 = ImplStrict | ImplLazy | ImplUnpack`. Or perhaps we should just re-use
 the already existing `data Strict = IsLazy | IsStrict | Unpack`?

--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/10697#comment:17>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler


More information about the ghc-tickets mailing list