deepseq: Deep evaluation of data structures

[ bsd3, control, library ] [ Propose Tags ]

This package provides methods for fully evaluating data structures ("deep evaluation"). Deep evaluation is often used for adding strictness to a program, e.g. in order to force pending exceptions, remove space leaks, or force lazy I/O to happen. It is also useful in parallel programs, to ensure pending work does not migrate to the wrong thread.

The primary use of this package is via the deepseq function, a "deep" version of seq. It is implemented on top of an NFData typeclass ("Normal Form Data", data structures with no unevaluated components) which defines strategies for fully evaluating different data types.

If you want to automatically derive NFData instances via the GHC.Generics facility, there is a companion package deepseq-generics which builds on top of this package.

Versions 1.0.0.0, 1.1.0.0, 1.1.0.1, 1.1.0.2, 1.2.0.0, 1.2.0.1, 1.3.0.0, 1.3.0.1, 1.3.0.2, 1.4.0.0, 1.4.1.0, 1.4.1.1, 1.4.1.2, 1.4.2.0, 1.4.3.0
Change log changelog
Dependencies array (>=0.3 && <0.6), base (>=4.3 && <4.8) [details]
License BSD-3-Clause
Author
Maintainer libraries@haskell.org
Revised Revision 1 made by HerbertValerioRiedel at Thu Oct 16 07:40:58 UTC 2014
Category Control
Bug tracker https://github.com/haskell/deepseq/issues
Source repo head: git clone https://github.com/haskell/deepseq.git
this: git clone http://git.haskell.org/packages/deepseq.git(tag deepseq-1.3.0.2-release)
Uploaded by HerbertValerioRiedel at Tue Nov 5 18:36:29 UTC 2013
Distributions Arch:1.4.3.0, LTSHaskell:1.4.3.0, NixOS:1.4.3.0, Stackage:1.4.3.0
Downloads 41618 total (306 in the last 30 days)
Rating 2.0 (votes: 1) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Successful builds reported [all 1 reports]
Hackage Matrix CI

Modules

[Index]

Downloads

Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Maintainer's Corner

For package maintainers and hackage trustees