Update release notes for recent language and TH changes.
authorRichard Eisenberg <eir@cis.upenn.edu>
Fri, 19 Dec 2014 15:19:55 +0000 (10:19 -0500)
committerRichard Eisenberg <eir@cis.upenn.edu>
Fri, 19 Dec 2014 15:20:35 +0000 (10:20 -0500)
docs/users_guide/7.10.1-notes.xml

index f87b0cc..58d7bdf 100644 (file)
                     <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>
 
                     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>,
                     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
                  <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
                  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