exp → exp :: [context =>] type
Expression type-signatures have the form e :: t, where e is an expression and t is a type (Section 4.1.2);
they are used to type an expression explicitly and may be used to resolve ambiguous typings due to
overloading (see Section 4.3.4). The value of the expression is just that of exp. As with normal type
signatures (see Section 4.4.1), the declared type may be more specific than the principal type derivable from
exp, but it is an error to give a type that is more general than, or not comparable to, the principal type.

}}}
with:
{{{
#!html
exp → infixexp :: [context =>] type
Expression type-signatures have the form e :: t, where e is an expression and t is a type (Section 4.1.2);
they are used to type an expression explicitly and may be used to resolve ambiguous typings due to
overloading (see Section 4.3.4). The value of the expression is just that of e. As with normal type
signatures (see Section 4.4.1), the declared type may be more specific than the principal type derivable from
e, but it is an error to give a type that is more general than, or not comparable to, the principal type.

}}}
The first change makes 3.16 consistent with the opening of 3 and with 10.5.
",igloo
,141,Whitespace fixes,,,modification,,new,2010-11-20T00:44:37Z,2015-09-26T10:38:19Z,"In [http://www.haskell.org/onlinereport/haskell2010/haskellch4.html#dx10-65015 4.1.2] there is a `*->*->*-> *` with a space before the last `*`.
In [http://www.haskell.org/onlinereport/haskell2010/haskellch4.html#x10-780004.3.3 4.3.3] there are two `T`s followed by a space:
{{{
When deriving a class C for a type T , instances for all
superclasses of C must exist for T , either via an explicit
instance declaration or by including the superclass in the
deriving clause.
}}}
",igloo
,142,typos in Haskell definition,,,modification,,new,2010-11-20T19:17:56Z,2015-09-26T10:38:19Z,"In http://www.haskell.org/pipermail/haskell-prime/2010-November/003300.html Yitzchak Gale reported:
{{{
Serge D. Mechveliani wrote:
> Looking into the on-line Haskell-2010 definition,
> I see in the Library definition
>
> 20.4.3 ...
> iteratef (instead of ""iterate f""),
> repeatx (instead of ""repeat x"").
Also, replicaten x (instead of ""replicate n x"").
}}}
",igloo
,143,add an opaque Text type to the language standard,,,modification,,new,2012-04-01T15:13:44Z,2015-09-26T13:33:51Z,"Add the Text datatype to the language.
The text package for GHC exposes a Text datatype that represents a string.
The current String = [Char] standard has issues with
* efficiency: there are more efficient representations than linked lists
* correctness: for Unicode correctness, one must operate on a string as a whole rather than individual code points
see OpaqueText",GregWeber
,145,'where' is undocumented,,,modification,,new,2015-09-26T08:48:04Z,2015-09-26T13:36:03Z,"I've looked through the H10 Report several times, and it seems the meaning of ""where"" blocks has been completely forgotten to be mentioned.",quchen
,146,Add AMP hierarchy,,,modification,quchen,new,2015-09-26T10:10:14Z,2015-09-26T13:33:51Z,"See https://wiki.haskell.org/Functor-Applicative-Monad_Proposal
Short version: Make Functor => Applicative => Monad standard
Related: ghc:#8004",quchen
,147,Move Monad.fail into its own MonadFail class,,,modification,quchen,new,2015-09-26T10:11:34Z,2015-09-26T13:33:51Z,"Title says it all.
MFP proposal text: https://wiki.haskell.org/index.php?title=MonadFail_Proposal
GHC implementation see ghc:#10751",quchen
,149,Add NumDecimals,,,modification,,new,2015-09-26T10:29:48Z,2015-10-22T14:44:34Z,"The GHC {{{NumDecimals}}} extension allows any Num to be entered in exponential form. For example,
{{{#!haskell
5e6 = 5 * 10^6
}}}
GHC manual entry: https://downloads.haskell.org/~ghc/latest/docs/html/users_guide/syntax-extns.html#num-decimals",quchen
,150,Remove superclasses from Num,,,modification,,new,2015-09-26T10:47:47Z,2015-09-26T13:42:06Z,"Haskell 2010 demands Num to be a subclass of both Eq and Show. Remove these constraints, as already implemented in GHC.",quchen
,151,Add Foldable/Traversable to Prelude (FTP),,,modification,,new,2015-09-26T10:49:50Z,2015-09-26T13:33:51Z,"The FTP added Foldable/Traversable to Prelude in GHC, and generalized many existing functions to take this into account.
https://ghc.haskell.org/trac/ghc/wiki/Prelude710/FTP",quchen
,153,BiFunctor family of types,,,modification,,new,2015-09-26T10:52:18Z,2015-09-26T13:33:51Z,"Bifunctor, Bitraversable, Bifoldable, ...",quchen
,155,Remove return and >> from Monad,,,modification,,new,2015-09-26T11:10:54Z,2015-10-21T13:52:11Z,"Due to the AMP #146 {{{Monad}}} now contains two redundant bindings: {{{return}}} and {{{>>}}} are already in {{{Applicative}}} as {{{pure}}} and {{{*>}}}.
See also GHC:Proposal/MonadOfNoReturn",quchen
,131,NoMonomorphismRestriction,,,removal,,new,2009-07-25T14:37:56Z,2015-09-26T10:38:19Z,Proposal: [wiki:NoMonomorphismRestriction].,igloo
,139,NoDatatypeContexts,,,removal,,new,2010-07-18T19:52:01Z,2015-09-26T13:36:03Z,"Proposal: NoDatatypeContexts.
",igloo
,144,NoImplicitPreludeImport,,,removal,,new,2013-05-28T01:39:30Z,2015-09-26T10:38:19Z,"See NoImplicitPreludeImport.
See also #58, #124.
",igloo
,157,AMP-corollary: `Alternative`/`MonadPlus`,,,removal,,new,2015-10-23T17:57:06Z,2015-10-23T17:57:06Z,"Haskell 2010 defines
{{{#!hs
class Monad m => MonadPlus m where
mzero :: m a
mplus :: m a -> m a -> m a
instance MonadPlus []
instance MonadPlus Maybe
}}}
With AMP, a generalisation to `Applicative` becomes obvious, which is widely known as `Applicative`:
{{{#!hs
class Applicative f => Alternative f where
empty :: f a
(<|>) :: f a -> f a -> f a
some :: f a -> f [a]
some = ...
many :: f a -> f [a]
many = ...
instance Alternative []
instance Alternative Maybe
}}}
This makes `MonadPlus` mostly redundant, as `mzero = empty` and `mplus = (<|>)` is used in most cases.
Therefore, it may be sensible to remove `MonadPlus` from the library report and add `Alternative` instead. Haskell implementations may still choose to provide a legacy `MonadPlus` in their standard library.",hvr