[commit: ghc] master: Add release note about flexible RebindableSyntax (bc83c73)

git at git.haskell.org git at git.haskell.org
Fri Jan 29 13:49:25 UTC 2016


Repository : ssh://git@git.haskell.org/ghc

On branch  : master
Link       : http://ghc.haskell.org/trac/ghc/changeset/bc83c733e58939e1ff0d5eea9dca359615203ea4/ghc

>---------------------------------------------------------------

commit bc83c733e58939e1ff0d5eea9dca359615203ea4
Author: Richard Eisenberg <eir at cis.upenn.edu>
Date:   Wed Jan 27 10:55:17 2016 -0500

    Add release note about flexible RebindableSyntax


>---------------------------------------------------------------

bc83c733e58939e1ff0d5eea9dca359615203ea4
 docs/users_guide/8.0.1-notes.rst | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/docs/users_guide/8.0.1-notes.rst b/docs/users_guide/8.0.1-notes.rst
index b31223e..41e6c2b 100644
--- a/docs/users_guide/8.0.1-notes.rst
+++ b/docs/users_guide/8.0.1-notes.rst
@@ -54,6 +54,8 @@ The highlights, since the 7.10 branch, are:
 
 - A rewritten (and greatly improved) pattern exhaustiveness checker
 
+- More flexible rebindable syntax
+
 - GHC can run the interpreter in a separate process (see
   :ref:`external-interpreter`), and the interpreter can now run profiled
   code.
@@ -137,6 +139,12 @@ Language
 -  The :ghc-flag:`-XDeriveAnyClass` extension now fills in associated type family
    default instances when deriving a class that contains them.
 
+-  The :ghc-flag:`-XRebindableSyntax` feature is now much more flexible, imposing
+   fewer restrictions on the types of the rebindable syntax elements. For example,
+   your ``negate`` function may now return a different type than it accepts.
+   Rebindable syntax also supports higher-rank types fully, allowing types
+   like ``(>>=) :: m a -> (forall x. a x -> m b) -> m b``.
+
 -  Users can now define record pattern synonyms. This allows pattern synonyms
    to behave more like normal data constructors. For example, ::
 



More information about the ghc-commits mailing list