Provides a monad-transformer version of the Control.Exception.catch
Haskell function. For this, it defines the MonadCatchIO class, a subset
of MonadIO. It defines proper instances for most monad transformers in
the 'mtl' library.
Provides functions to throw and catch exceptions. Unlike the functions from
Control.Exception, which work in IO, these work in any stack of monad
transformers (from the 'transformers' package) with IO as the base monad.
You can extend this functionality to other monads, by creating an instance
of the MonadCatchIO class.
Support for computations which consume random values.
A priority search queue efficiently supports the opperations of both a
search tree and a priority queue. A 'Binding' is a product of a key and
a priority. Bindings can be inserted, deleted, modified and queried in
logarithmic time, and the binding with the least priority can be
retrieved in constant time. A queue can be built from a list of
bindings, sorted by keys, in linear time.
A monad transformer version of the ST monad.
This package implements functions, analogous to those from Data.List, to
create and manipulate infinite lists: data Stream a = Cons a (Stream a).
It provides alternative definitions for those Prelude functions that make
sense on such streams.
This is a pretty printing library based on Wadler's paper "A Prettier
Printer". It has been enhanced with support for ANSI terminal colored
output using the ansi-terminal package.
ASN1 data reader and writer in raw form with supports for high level forms
of ASN1 (BER, and DER).
ASN1 data reader and writer in raw form with supports for high level
forms of ASN1 (BER, and DER).
Simple monadic parser for ASN1 stream types, when ASN1 pattern matching
is not convenient.