Add various instances to newtypes in Data.Monoid
authorOleg Grenrus <oleg.grenrus@iki.fi>
Tue, 3 Mar 2015 13:21:43 +0000 (07:21 -0600)
committerAustin Seipp <austin@well-typed.com>
Tue, 3 Mar 2015 13:21:44 +0000 (07:21 -0600)
commit4e6bcc2c8134f9c1ba7d715b3206130f23c529fb
treee96cb726189a973f1e25982cc2c0d64bd3b4a8f1
parent89458eba5721de1b6b3378415f26e110bab8cc0f
Add various instances to newtypes in Data.Monoid

Summary:
Add Functor instances for Dual, Sum and Product
Add Foldable instances for Dual, Sum and Product
Add Traversable instances for Dual, Sum and Product
Add Foldable and Traversable instances for First and Last
Add Applicative, Monad instances to Dual, Sum, Product
Add MonadFix to Data.Monoid wrappers
Derive Data for Identity
Add Data instances to Data.Monoid wrappers
Add Data (Alt f a) instance

Reviewers: ekmett, dfeuer, hvr, austin

Reviewed By: dfeuer, austin

Subscribers: thomie

Differential Revision: https://phabricator.haskell.org/D673

GHC Trac Issues: #10107
libraries/base/Control/Monad/Fix.hs
libraries/base/Data/Data.hs
libraries/base/Data/Foldable.hs
libraries/base/Data/Monoid.hs
libraries/base/Data/Traversable.hs
testsuite/tests/annotations/should_fail/annfail10.stderr
testsuite/tests/ghci.debugger/scripts/break006.stderr
testsuite/tests/typecheck/should_fail/T5095.stderr