@hackage deepseq-bounded0.5.5
Bounded deepseq, including support for generic deriving
Deprecated
Dependencies (8)
- array >=0.5 && <0.6
- base >=4 && <5
- deepseq >=1.3 && <1.4
- deepseq-generics >=0.1 && <0.2
- generics-sop >=0.1 && <0.2
- parallel >=3.2 && <3.3 Show all…
Dependents (3)
@hackage/seqaid, @hackage/acme-everything, @hackage/leaky
Package Flags
haskell98_fragment
(off by default)
Sacrifice generic deriving, the NFDataPDyn module, and a couple functions from the PatAlg module, in exchange for true Haskell98 conformance (portability). You need to set PARALLELISM_EXPERIMENT, USE_WW_DEEPSEQ, USE_SOP, and NFDATA_INSTANCE_PATTERN to False if you set HASKELL98_FRAGMENT to True. (One thing it insists on is -XPatternGuards, although this could be relieved in the obvious way...)
parallelism_experiment
(on by default)
We can selectively use par instead of seq, which is interesting.
just_alias_gseqable
(on by default)
The SOP generic function is probably more performant, anyway! (This will be forced False if HASKELL98_FRAGMENT is True.)
use_ww_deepseq
(on by default)
Depend on deepseq and deepseq-generics, to provide conditional deep forcing. This is optional.
warn_pattern_match_failure
(off by default)
For NFDataP, if a pattern match fails a warning is output to stderr.
use_sop
(on by default)
Use the generics-sop package instead of GHC.Generics (in GNFDataN) and instead of SYB (in NFDataPDyn). If USE_SOP is False, and NFDataPDyn, GNFDataP, and GSeqable modules will not be available. Also, if USE_SOP is False, then JUST_ALIAS_GSEQABLE must be False (this is not done for you; the language of Cabal flags makes it hard to write such logic, probably by design!...).
nfdata_instance_pattern
(on by default)
A flag to assist debugging, affecting a few modules.
For additional documentation, browse to ./HTML (or http://www.fremissant.net/deepseq-bounded).