Hi devs,

In a chat with Simon this morning about kind equalities, he expressed that you 
all might want to know about the plans for kind equalities in 8.0.

The wiki page both for user-facing changes and for implementation notes is 
here: https://ghc.haskell.org/trac/ghc/wiki/DependentHaskell/Phase1
It is my intent that all user-facing changes mentioned there will be available 
in 8.0. I am hard at work getting my branch ready to merge, and hope to do so 
mid-November.

Note: this is almost fully backward-compatible. Here are some areas where there 
are known incompatibilities:
- Template Haskell will have to be updated. But there's a raft of changes 
there, anyway.
- GHC will do a more careful job of checking for termination of instances 
regarding the use of kind variables. This may require new UndecidableInstances 
declarations. But the fact that these definitions (like `instance (C a, C b) => 
C (a b)` for a polykinded C) were accepted previously could be called a bug.

That's actually all I know of so far.

You can take kind equalities for a spin at github.com/goldfirere/ghc, on the 
"nokinds" branch. Note that this hasn't been merged with `master` since 
December of last year, so expect a little strange behavior compared with 7.10. 
These wrinkles will get smoothed out, of course.

Richard
_______________________________________________
ghc-devs mailing list
ghc-devs@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs

Reply via email to