A bifunctor is a type constructor that takes two type arguments and is
a functor in both arguments. That is, unlike with Functor, a type
constructor such as Either does not need to be partially applied for a
Bifunctor instance, and the methods in this class permit mapping
functions over the Left value or the Right value, or both at the same
time.
Formally, the class Bifunctor represents a bifunctor from Hask ->
Hask.
Intuitively it is a bifunctor where both the first and second
arguments are covariant.
You can define a Bifunctor by either defining bimap or by defining
both first and second.
Changes in 0.14.0.0
* Low level functions for acquiring random data for initialization of
PRGN state is moved to System.Random.MWC.SeedSource module
* Ensure that carry is always correct when restoring PRNG state from
seed. Only affects users who create 258 element seed manually. (#63,
#65)
Changes in 0.13.6.0
* tablePoisson now can handle λ>1923, see #59 for details. That
required intoduction of dependency on math-functions.
Changes in 0.13.5.0
* logCategorical added
Changes in 0.13.4.0
* withSystemRandom uses RtlGenRandom for seeding generator on windows
This library contain collection of various utilities for numerical
computing. So far there're special mathematical functions, compensated
summation algorithm, summation of series, root finding for real
functions, polynomial summation and Chebyshev polynomials.
Keras Applications is the applications module of the Keras deep
learning library. It provides model definitions and pre-trained
weights for a number of popular archictures, such as VGG16, ResNet50,
Xception, MobileNet, and more.
Keras Preprocessing is the data preprocessing and data augmentation
module of the Keras deep learning library. It provides utilities for
working with image data, text data, and sequence data.
0.6.1 [2019.09.06]
* Add a Distributive instance for WrappedMonad m.
0.6 [2018.07.02]
* Remove fmapCollect.
* Avoid incurring some dependencies when using recent GHCs.
0.5.3
* Support doctest-0.12
0.5.2
* Revamp Setup.hs to use cabal-doctest. This makes distributive build
with Cabal-1.25, and makes the doctests work with cabal new-build
and sandboxes.
* Fix bugs in Data.Distributive.Generic that cause generic
Distributive instances not to work properly for datatypes with
recursive types
* Add genericCollect to Data.Distributive.Generic, and switch the
underlying machinery in that module to work on a collect-like method
instead of a distribute-like one
* Add a test suite for regression-testing Data.Distributive.Generic
0.5.1
* Add Distributive instances for datatypes from Data.Semigroup and
GHC.Generics
* Add MINIMAL pragma for Distributive
0.5.0.2
* A more elegant fix for builds on GHC 7.2
0.5.0.1
* Fix builds on GHC 7.2
0.5
* Added flags for removing some dependencies.
* Support doctests when building to non-standard locations (such as
when using stack.)
* Support base-orphans
Contravariant functors, sometimes referred to colloquially as
cofunctor, even though the dual of a functor is just a functor. As
with functor the definition of contravariant for a given ADT is
unambiguous.
0.19.1 [2019.08.27]
* Add GenericSemigroupMonoid, an adapter newtype suitable for
DerivingVia, to Data.Semigroup.Generic.
* Work around a bug related to the backported Generic(1) instances in
this package (that could only be triggered on GHC 7.2 or 7.4) in
which the hand-written Datatype, Constructor, and Selector instances
for internal data types could overlap with GHC-generated instances.
0.19 [2019.05.10]
* The (<>) method of the backported Semigroup class no longer has a
default implementation in terms of mappend. This mirrors the
Data.Semigroup API that was introduced in base-4.9. This is a
breaking change for any Semigroup instances that are defined in
tandem with versions of base older than 4.9.
* Make the backported Hashable Arg instance reflect its respective
variants in the hashable package. In hashable-1.3, the Hashable Arg
instance only hashes the first argument, lest equal values have
different hashes.
* Backport the Lift (NonEmpty a) instance introduced in
template-haskell-2.15.0.0.
* Data.List.NonEmpty is now unconditionally Trustworthy.
0.18.5 [2018.07.02]
* Use a more efficient sconcat for the Semigroup instances for strict
and lazy ByteString.
0.18.4 [2018.01.29]
* Backport Semigroup instances for Data.Ord.Down and strict ST, which
were added in base-4.11.
0.18.3
* Add Semigroup instance for IO, as well as for Event and Lifetime
from GHC.Event
* Add Eq1, Ord1, Read1, and Show1 instances for NonEmpty
* Define Generic and Generic1 instances back to GHC 7.2, and expose
the Data.Semigroup.Generic module on GHC 7.2
0.18.2
* Depend on the bytestring-builder package to ensure Semigroup
instances for bytestring Builder and ShortByteString are always
defined
* Allow building with binary-0.8.3 and later
0.18.1
* Add the missing instance for Data.Binary.Builder.Builder.
0.18.0.1
* Added support for base-4.9
0.18
* Removed the partial functions words, unwords, lines, unlines
0.17.0.1
* Fixed the @since annotations
0.17
* Added groupWith, groupAllWith, groupWith1, groupAllWith1
* Renamed sortOn to sortWith to match the "Comprehensive
comprehensions" paper and TransformListComp extension.
* Add Semigroup instances for Alt, Void, Proxy and Tagged
* Add Num instances for Min and Max
* Removed times1p in favor of stimes.
0.16.2.2
* Cleaned up imports to remove warnings on GHC 7.10.
0.16.2.1
* Restored the ability to build on GHC < 7.6. (Generic1 deriving was only added in GHC 7.6)
0.16.2
* Added genericMappend and supporting GSemigroup class for generically
deriving Semigroup instances.
* Added Arg a b which only compares for equality/order on its first
argument, which can be used to compute argmin and argmax.
* Add Bifunctor Arg instance to avoid orphans for GHC 7.10+.
* Added missing Data.Monoid.Generic module to source control.
0.16.1
* Added Semigroup instances for various Builder constructions in text
and bytestring where available.
* Added MonadFix and MonadPlus instances for NonEmpty.
0.16.0.1
* Bumped deepseq version bound for GHC 7.10 compatibility.
0.16
* times1p and timesN are now reduced to accepting only a Natural
argument. Whole doesn't exist in GHC 7.10's Numeric.Natural, and
nats version 1 has removed support for the class.
0.15.4
* Use Data.Coerce.coerce on GHC 7.8+ to reduce the number of
eta-expansions in the resulting core.
* Avoid conflict with pending Foldable.length in base.
0.3.6.2
* Due to a regression introduced in 0.3.4.14 the RealFrac methods and
floatingOrInteger became vulnerable to a space blowup when applied
to scientifics with huge exponents. This has now been fixed again.
0.3.6.1
* Fix build on GHC < 8.
0.3.6.0
* Make the methods of the Hashable, Eq and Ord instances safe to use
when applied to scientific numbers coming from untrusted
sources. Previously these methods first converted their arguments to
Rational before applying the operation. This is unsafe because
converting a Scientific to a Rational could fill up all space and
crash your program when the Scientific has a huge base10Exponent.
Do note that the hash computation of the Hashable Scientific
instance has been changed because of this improvement!
Thanks to Tom Sydney Kerckhove (@NorfairKing) for pushing me to fix
this.
* fromRational :: Rational -> Scientific now throws an error instead
of diverging when applied to a repeating decimal. This does mean it
will consume space linear in the number of digits of the resulting
scientific. This makes "fromRational" and the other Fractional
methods "recip" and "/" a bit safer to use.
* To get the old unsafe but more efficient behaviour the following
function was added: unsafeFromRational :: Rational -> Scientific.
* Add alternatives for fromRationalRepetend:
fromRationalRepetendLimited
:: Int -- ^ limit
-> Rational
-> Either (Scientific, Rational)
(Scientific, Maybe Int)
and:
fromRationalRepetendUnlimited
:: Rational -> (Scientific, Maybe Int)
Thanks to Ian Jeffries (@seagreen) for the idea.
0.3.5.3
* Dropped upper version bounds of dependencies because it's to much
work to maintain.
0.3.5.2
* Remove unused ghc-prim dependency.
* Added unit tests for read and scientificP
0.3.5.1
* Replace use of Vector from vector with Array from primitive.
0.3.5.0
* Export scientificP :: ReadP Scientific
(Courtesy of Shlok Datye @shlok)
0.3.4.15
* Fix build for base < 4.8.
0.3.4.14
* Some minor performance improvements.
0.3.4.13
* Support criterion-1.2
0.3.4.12
* Support base-4.10
0.3.4.11
* Support tasty-ant-xml-1.1.0
0.3.4.10
* Tighten lower bound on vector from 0.5 to 0.7 because building with
vector < 0.7 results in a build error.
* Move the internal modules Math.NumberTheory.Logarithms and
GHC.Integer.Logarithms.Compat to their own package
integer-logarithms so other people can share that code.
0.3.4.9
* Support QuickCheck-2.9.
0.3.4.8
* Make bytestring-builder's installation conditional based on a Cabal flag.
0.3.4.7
* Unconditionally export Data.ByteString.Builder.Scientific. The
bytestring-builder cabal flag has been removed. Depend on
bytestring-builder for backwards compatibility for GHC < 7.8.
0.3.4.6
* Made toDecimalDigits more similar to floatToDigits
Previously:
toDecimalDigits 0 == ([0],1)
Now:
toDecimalDigits 0 == ([0],0)
Because:
Numeric.floatToDigits 10 (0 :: Double) == ([0],0)
* Introduce a special case for 0 in fromFloatDigits
fromFloatDigits 0 = 0
This should fix https://github.com/bos/aeson/issues/369
0.3.4.5
* The following are all a courtesy of Oleg Grenrus (phadej):
* Support GHC-8.0.1
* Support binary-0.8
* Enable Travis continuous integration
0.3.4.4
* Improved performance of toDecimalDigits by 13%.
0.3.4.3
* Fix build with integer-simple.
0.3.4.2
* Fix build on GHC-7.4. Courtesy of Adam Bergmark..
0.3.4.1
* Fix build on GHC-7.0.4
0.3.4.0
* Added fromRationalRepetend & toRationalRepetend for safely
converting from and to rationals which have a repeating decimal
representation like:
1 % 28 = 0.03(571428).
* Added a Binary instance.
* Various performance improvements.
* Support vector-0.11
* Support tasty-0.11
* Support criterion-1.1.0.0
0.3.3.8
* Support QuickCheck-2.8.
0.3.3.7
* Fixed both the
Prelude Data.Scientific> reads "0.0" :: [(Data.Scientific.Scientific,String)]
[(0.0,".0"),(0.0,"")]
problem and the
read " 8" :: Scientific fails, while read " 8" :: Double succeeds
problem. Courtesy of neongreen.
0.3.3.6
* Fixed bug in the x / y method for Scientific. Since I was using the
default implementation: `x * recip y` the operation would diverge
when `recip y` had an infinite decimal output. This shouldn't happen
when the result of / is finite again. For example: 0.6 / 0.3 should
yield 2.0.
This is now fixed by using the following implementation:
`x / y = fromRational $ toRational x / toRational y`
Math.NumberTheory.Logarithms and Math.NumberTheory.Powers.Integer from
the arithmoi package.
Also provides GHC.Integer.Logarithms.Compat and
Math.NumberTheory.Power.Natural modules, as well as some additional
functions in migrated modules.
1.1.2 [2018-02-06]
* Don't enable Safe on GHC 7.2.
1.1.1
* Backported a more efficient Binary instance for Nat
* Allow binary-0.8
1.1
* Backported Lift instances.
1.0
* Make nats a compat-package since Numeric.Natural moved to base-4.8.0.0.
0.2.1
* Better readsPrec handling when you try to feed it a negative
number. Note it is a failed parse rather than an error.
Notable changes:
- A new connector for Econdb was introduced. Econdb provides
aggregated economic data from 90+ official statistical agencies.
- Migrated IEX readers to IEX Cloud. All readers now require an API
token (IEX_API_KEY).
- Removal of Google finance and Morningstar, which were deprecated in
0.7.0.
- Immediate deprecation of Robinhood for quotes and historical data.
Robinhood ended support for these endpoints in 1/2019.
Backwards compatibility breaks and deprecations:
* Symbols no longer automatically convert to functions when called,
e.g., if f = Symbol('f'), f(t) is now a TypeError. To create a
function, use f = Function('f') or f = symbols('f', cls=Function).
* .integrate() has been renamed to .compute_expectation() in
sympy.stats in order to avoid confusion with the integrals module.
* classof() and a2idx() in sympy.matrices.matrices have been
deprecated in favor of the same functions in sympy.matrices.common.
* The source() function has been deprecated. Use inspect.getsource or
?? in IPython.
See the release notes for the full list of changes.
https://github.com/sympy/sympy/wiki/release-notes-for-1.3