summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Eisenberg <eir@cis.upenn.edu>2014-12-19 10:19:55 -0500
committerRichard Eisenberg <eir@cis.upenn.edu>2014-12-19 10:20:35 -0500
commit3fffd32c1329e6e21e3e1eefd776a24e503fcefe (patch)
tree33b316c21a4226b4edd365b63d19ea1602ca266b
parent53599b3f515227f3407991913781fc8ea79d9638 (diff)
downloadhaskell-3fffd32c1329e6e21e3e1eefd776a24e503fcefe.tar.gz
Update release notes for recent language and TH changes.
-rw-r--r--docs/users_guide/7.10.1-notes.xml41
1 files changed, 40 insertions, 1 deletions
diff --git a/docs/users_guide/7.10.1-notes.xml b/docs/users_guide/7.10.1-notes.xml
index f87b0ccd29..58d7bdfc2b 100644
--- a/docs/users_guide/7.10.1-notes.xml
+++ b/docs/users_guide/7.10.1-notes.xml
@@ -72,6 +72,17 @@
<literal>[t|forall a. Ord a => a|]</literal>.
</para>
</listitem>
+
+ <listitem>
+ <para>
+ Instance contexts inferred while processing <literal>deriving</literal>
+ directives attached to <literal>data</literal> and <literal>newtype</literal>
+ declarations now forbid equality constraints. This is a regression in
+ obscure cases, but it will yield better error messages in more common
+ cases. Users caught by the regression can simply use standalone-deriving,
+ where you specify the context yourself.
+ </para>
+ </listitem>
</itemizedlist>
</sect3>
@@ -191,7 +202,9 @@
Added support for generating LINE pragma declarations
(<xref linkend="line-pragma"/>).
</para>
+ </listitem>
+ <listitem>
<para>
The type <literal>Pred</literal> (which stores a type
constraint) is now a synonym for <literal>Type</literal>,
@@ -199,17 +212,23 @@
extension. This is a breaking change and may require
some rewriting of Template Haskell code.
</para>
+ </listitem>
+ <listitem>
<para>
Pattern splices now work.
</para>
+ </listitem>
+ <listitem>
<para>
<literal>reifyInstances</literal> now treats unbound type
variables as univerally quantified, allowing lookup of, say,
the instance for <literal>Eq [a]</literal>.
</para>
+ </listitem>
+ <listitem>
<para>
More kind annotations appear in reified types, in order to
disambiguate types that would otherwise be ambiguous in the
@@ -218,22 +237,40 @@
<literal>KindedTV</literal>s. (This does not affect Template
Haskell quotations, just calls to <literal>reify</literal>.)
</para>
+ </listitem>
+ <listitem>
<para>
Various features unsupported in quotations were previously
silently ignored. These now cause errors.
</para>
+ </listitem>
+ <listitem>
<para>
<literal>Lift</literal> instances were added for
- <literal>()</literal> and <literal>Ratio</literal>.
+ many more types: all of the <literal>IntXX</literal>
+ and <literal>WordXX</literal> types, <literal>Ratio a</literal>,
+ <literal>()</literal>, <literal>Float</literal>, and
+ <literal>Double</literal>.
</para>
+ </listitem>
+ <listitem>
<para>
All Template Haskell datatypes now have
<literal>Generic</literal> and <literal>Ord</literal> instances.
</para>
+ </listitem>
+ <listitem>
+ <para>
+ <literal>Ppr</literal> instances were added for <literal>Lit</literal>
+ and <literal>Loc</literal>.
+ </para>
+ </listitem>
+
+ <listitem>
<para>
Two new declaration forms are now supported:
standalone-deriving declarations and generic method
@@ -241,7 +278,9 @@
a class). This means an expansion to the <literal>Dec</literal>
type.
</para>
+ </listitem>
+ <listitem>
<para>
Template Haskell is now more pedantic about splicing in
bogus variable names, like those containing whitespace. If you