Tentative high-level plans for 7.10.1
Thomas Winant
Thomas.Winant at cs.kuleuven.be
Thu Oct 9 08:17:37 UTC 2014
On 2014-10-08 00:21, Simon Peyton Jones wrote:
> Is the wiki page up to date?
> https://ghc.haskell.org/trac/ghc/wiki/PartialTypeSignatures
Yes it is.
> I'd move the Constraint Wildcards bit out to an appendix or delete
> altogether -- it's a distraction since it's not part of the design.
>
> Named wildcard are described as a "fourth form" but actually it's
> "third" I suppose. And aren't they just a vairant of "type wildcards"?
> You can't name "extra-constraint wildcards" can you?
>
> There's a long section on "partial expressions and pattern signatures"
> but I think the conclusion is "we don't do this". Again, move to an
> appendix of not-implemented ideas.
>
> Try to focus on the actual design.
>
> Thanks!
Done.
Cheers,
Thomas
> ________________________________________
> From: ghc-devs [ghc-devs-bounces at haskell.org] on behalf of Thomas
> Winant [Thomas.Winant at cs.kuleuven.be]
> Sent: 07 October 2014 17:07
> To: ghc-devs at haskell.org
> Subject: Re: Tentative high-level plans for 7.10.1
>
> Hi,
>
> On 2014-10-03 23:35, Austin Seipp wrote:
>> ..
>> Here are the major patches on Phabricator still needing review, that I
>> think we'd like to see for 7.10.1:
>>
>> - D168: Partial type signatures
>> ..
>
> As Austin said, our patch implementing Partial Type Signatures is still
> up for code review on Phabricator [1]. It is our goal too to get it in
> 7.10.1, and we will try to do as much as we can to help out with this
> process.
>
> We'd like it very much if people had a thorough look at it (thanks
> Richard for the feedback). We're glad to provide additional info
> (including extra comments in the code), rewrite confusing code, etc.
>
> = Status =
>
> The implementation is nearly complete:
> * We've integrated support for Holes, i.e. by default, an underscore in
> a type signature will generate an error message mentioning the
> inferred type. By enabling -XPartialTypeSignatures, the inferred
> type
> is used and the underscore can remain in the type signature.
> * SPJ's proposed simplifications (over Skype) have been implemented,
> except for the fact that we still use the annotated constraints for
> solving, see [2].
> * Richard's comments on Phabricator [1] have been addressed in extra
> commits.
> * I've rebased the patch against master on Monday.
> * I've added docstring for most of the new functions I've added.
> * Some TODOs still remain, I'll summarise the most important ones here.
> See [3] for a detailed list with examples.
> * When -XMonoLocalBinds is enabled (implied by -XGADTs and
> -XTypeFamilies), (some) local bindings without type signature
> aren't
> generalised. Partial type signatures should follow this behaviour.
> This is currently not handled correctly. We have a stopgap
> solution
> involving generating an error in mind, but would prefer a real
> fix.
> We'd like some help with this.
> * Partial type signatures are currently ignored for pattern
> bindings.
> This bug doesn't seem to be difficult to solve, but requires some
> debugging.
> * The following code doesn't type check:
>
> {-# LANGUAGE MonomorphismRestriction, PartialTypeSignatures #-}
> charlie :: _ => a
> charlie = 3
>
> Type error: No instance for (Num a) arising from the literal ‘3’.
> We
> would like the (Num a) constraint to be inferred (because of the
> extra-constraint wildcard).
> * Some smaller things, e.g. improving error messages.
>
> We'll try to fix the remaining TODOs, but help is certainly appreciated
> and will speed up integrating this patch!
>
> Please have a look at the code and let us know what we can do to help.
>
>
> Cheers,
> Thomas Winant
>
> [1]: https://phabricator.haskell.org/D168
> [2]:
> https://ghc.haskell.org/trac/ghc/wiki/PartialTypeSignatures#extra-constraints-wildcard
> [3]: https://ghc.haskell.org/trac/ghc/wiki/PartialTypeSignatures#TODOs
>
> Disclaimer: http://www.kuleuven.be/cwis/email_disclaimer.htm
> _______________________________________________
> ghc-devs mailing list
> ghc-devs at haskell.org
> http://www.haskell.org/mailman/listinfo/ghc-devs
Disclaimer: http://www.kuleuven.be/cwis/email_disclaimer.htm
More information about the ghc-devs
mailing list