Copyright | Copyright (C) 2011 Uwe Schmidt |
---|---|
License | MIT |
Maintainer | Uwe Schmidt (uwe\@fh-wedel.de) |
Stability | experimental |
Portability | non-portable |
Safe Haskell | Safe |
Language | Haskell98 |
Arrows for evaluation of normal form results
Documentation
strictA :: (Arrow a, NFData b) => a b b Source #
complete evaluation of an arrow result using DeepSeq
this is sometimes useful for preventing space leaks, especially after reading and validation of a document, all DTD stuff is not longer in use and can be recycled by the GC.
class Arrow a => ArrowNF a where Source #
Nothing
class (Arrow a, ArrowList a) => ArrowWNF a where Source #
partial evaluation of an arrow result using FlatSeq
There are two arrows with force the partial evaluation. By convention the 2. should be less lazy than the 1.
These arrows are sometimes useful for preventing space leaks, especially when parsing complex data structures. In many cases the evaluated AST is more space efficient than the unevaluaded with a lot of closures.
Nothing