ST +Control.Monad

module Control.Monad.ST
base Control.Monad.ST
This library provides support for strict state threads, as described in the PLDI '94 paper by John Launchbury and Simon Peyton Jones Lazy Functional State Threads.
module Control.Monad.ST.Strict
base Control.Monad.ST.Strict
The strict ST monad (re-export of Control.Monad.ST)
data ST s a
base Control.Monad.ST.Lazy
The lazy state-transformer monad. A computation of type ST s a transforms an internal state indexed by s, and returns a value of type a. The s parameter is either * an unstantiated type variable (inside invocations of runST), or * RealWorld (inside invocations of stToIO). It serves to keep the internal states of different invocations of runST separate from each other and from invocations of stToIO. The >>= and >> operations are not strict in the state. For example, > runST (writeSTRef _|_ v >>= readSTRef _|_ >> return 2) = 2
data ST s a
base Control.Monad.ST
The strict state-transformer monad. A computation of type ST s a transforms an internal state indexed by s, and returns a value of type a. The s parameter is either * an uninstantiated type variable (inside invocations of runST), or * RealWorld (inside invocations of Control.Monad.ST.stToIO). It serves to keep the internal states of different invocations of runST separate from each other and from invocations of Control.Monad.ST.stToIO. The >>= and >> operations are strict in the state (though not in values stored in the state). For example, > runST (writeSTRef _|_ v >>= f) = _|_
strictToLazyST :: ST s a -> ST s a
base Control.Monad.ST.Lazy
Convert a strict ST computation into a lazy one. The strict state thread passed to strictToLazyST is not performed until the result of the lazy state thread it returns is demanded.
stToIO :: ST RealWorld a -> IO a
base Control.Monad.ST.Lazy
A monad transformer embedding lazy state transformers in the IO monad. The RealWorld parameter indicates that the internal state used by the ST computation is a special one supplied by the IO monad, and thus distinct from those used by invocations of runST.
stToIO :: ST RealWorld a -> IO a
base Control.Monad.ST
A monad transformer embedding strict state transformers in the IO monad. The RealWorld parameter indicates that the internal state used by the ST computation is a special one supplied by the IO monad, and thus distinct from those used by invocations of runST.
module Control.Monad.RWS.Strict
mtl Control.Monad.RWS.Strict
Strict RWS monad. Inspired by the paper Functional Programming with Overloading and Higher-Order Polymorphism, Mark P Jones (http://web.cecs.pdx.edu/~mpj/) Advanced School of Functional Programming, 1995.
module Control.Monad.State
mtl Control.Monad.State
State monads. This module is inspired by the paper Functional Programming with Overloading and Higher-Order Polymorphism, Mark P Jones (http://web.cecs.pdx.edu/~mpj/) Advanced School of Functional Programming, 1995.
module Control.Monad.State.Strict
mtl Control.Monad.State.Strict
Strict state monads. This module is inspired by the paper Functional Programming with Overloading and Higher-Order Polymorphism, Mark P Jones (http://web.cecs.pdx.edu/~mpj/) Advanced School of Functional Programming, 1995.
module Control.Monad.STM
stm Control.Monad.STM
Software Transactional Memory: a modular composable concurrency abstraction. See * Composable memory transactions, by Tim Harris, Simon Marlow, Simon Peyton Jones, and Maurice Herlihy, in /ACM Conference on Principles and Practice of Parallel Programming/ 2005. http://research.microsoft.com/Users/simonpj/papers/stm/index.htm This module only defines the STM monad; you probably want to import Control.Concurrent.STM (which exports Control.Monad.STM).
module Control.Monad.Trans.RWS.Strict
transformers Control.Monad.Trans.RWS.Strict
A monad transformer that combines ReaderT, WriterT and StateT. This version is strict; for a lazy version, see Control.Monad.Trans.RWS.Lazy, which has the same interface.
module Control.Monad.Trans.State
transformers Control.Monad.Trans.State
State monads, passing an updatable state through a computation. Some computations may not require the full power of state transformers: * For a read-only state, see Control.Monad.Trans.Reader. * To accumulate a value without using it on the way, see Control.Monad.Trans.Writer. This version is lazy; for a strict version, see Control.Monad.Trans.State.Strict, which has the same interface.
module Control.Monad.Trans.State.Strict
transformers Control.Monad.Trans.State.Strict
Strict state monads, passing an updatable state through a computation. See below for examples. In this version, sequencing of computations is strict. For a lazy version, see Control.Monad.Trans.State.Lazy, which has the same interface. Some computations may not require the full power of state transformers: * For a read-only state, see Control.Monad.Trans.Reader. * To accumulate a value without using it on the way, see Control.Monad.Trans.Writer.
module Control.Monad.Trans.Writer.Strict
transformers Control.Monad.Trans.Writer.Strict
The strict WriterT monad transformer, which adds collection of outputs (such as a count or string output) to a given monad. This version builds its output strictly; for a lazy version, see Control.Monad.Trans.Writer.Lazy, which has the same interface. This monad transformer provides only limited access to the output during the computation. For more general access, use Control.Monad.Trans.State instead.
module Control.Monad.Writer.Strict
mtl Control.Monad.Writer.Strict
Strict writer monads. Inspired by the paper Functional Programming with Overloading and Higher-Order Polymorphism, Mark P Jones (http://web.cecs.pdx.edu/~mpj/pubs/springschool.html) Advanced School of Functional Programming, 1995.
package stable-maps
package
Provides an API for inserting heterogeneous data in a collection keyed by StableNames and for later retrieving it. Version 0.0.3.2
package star-to-star
package
Fundamental * -> * types, operators, and covariant instances. Version 1.0
package star-to-star-contra
package
Contravariant instances for the fundamental * -> * types and operators. Version 1.0
package starling
package
A haskell memcached client. See http://memcached.org for more information. This implements the new binary protocol, so it only works with memcached version 1.3 and newer. Version 0.3.0
package starrover2
package
Space simulation game. Version 0.1.1
type State s = StateT s Identity
transformers Control.Monad.Trans.State.Lazy, transformers Control.Monad.Trans.State.Strict, mtl Control.Monad.State.Lazy, mtl Control.Monad.State.Strict
A state monad parameterized by the type s of the state to carry. The return function leaves the state unchanged, while >>= uses the final state of the first computation as the initial state of the second.
state :: (Monoid w, Monad m) => (s -> (a, s)) -> RWST r w s m a
transformers Control.Monad.Trans.RWS.Lazy, transformers Control.Monad.Trans.RWS.Strict
Construct a state monad computation from a state transformer function.
state :: Monad m => (s -> (a, s)) -> StateT s m a
transformers Control.Monad.Trans.State.Lazy, transformers Control.Monad.Trans.State.Strict
Construct a state monad computation from a function. (The inverse of runState.)
state :: MonadState s m => (s -> (a, s)) -> m a
mtl Control.Monad.State.Class, mtl Control.Monad.State.Lazy, mtl Control.Monad.State.Strict
package state
package
Data.State Version 0.1
package state-record
package
This package provides a Template Haskell function which transforms a normal record declaration into one which supports many useful operations when used as the state in a State monad. Version 0.0.1
package statechart
package
TODO Version 0.1.0
package stateful-mtl
package
A MonadST type class, instances, and some helpful monad functions. Version 1.0.7
package stateref
package
A collection of type-classes generalizing the read/write/modify operations for stateful variables provided by things like IORef, TVar, &c. Note that The interface has changed a bit from the 0.2.* version.  "*Ref" functions are now called "*Reference" and new "*Ref" function exist with simpler signatures. The new Ref existential type provides a convenient monad-indexed reference type, and the HasRef class indicates monads for which there is a default reference type for every referent. Version 0.3
package statestack
package
Simple State-like monad transformer where states can be saved to and restored from an internal stack. Version 0.1.1
StateT :: (s -> m (a, s)) -> StateT s a
mtl Control.Monad.State.Lazy, mtl Control.Monad.State.Strict
StateT :: (s -> m (a, s)) -> StateT s m a
transformers Control.Monad.Trans.State.Lazy, transformers Control.Monad.Trans.State.Strict
newtype StateT s m a
transformers Control.Monad.Trans.State.Lazy, transformers Control.Monad.Trans.State.Strict
A state transformer monad parameterized by: * s - The state. * m - The inner monad. The return function leaves the state unchanged, while >>= uses the final state of the first computation as the initial state of the second.
package statethread
package
The ST monad and STRefs in a portable form. This package implements state threads as wrapper around IO and IORefs. Your compiler must support rank-2-types, IORefs, unsafePerformIO and unsafeInterleaveIO. The package can be used as drop-in replacement for the st package. Version 0.1.1
package StateVar
package
This package contains state variables, which are references in the IO monad, like IORefs or parts of the OpenGL state. Version 1.0.0.0
package static-hash
package
Pure immutable hash whose lookup is O(1) Version 0.0.1
package static-resources
package
You need to add static resources to your web page. For production you want to decrease number of files. For development you need them separated. Support for distinct sets of JS and CSS files for different views. Version 0.1.2
package StatisticalMethods
package
High-level statistical methods. * Confusion matrix * Confusion matrix dependent statistics (sensitivity, specificity, F-measure, mcc) * EM algorithm for two-component Gaussian mixture. * GMM (Gaussian Mixture Models) with >=1 Gaussians fitted to the data. Note that some methods are for testing only (two-component Gaussian mixture EM). Version 0.0.0.1
package statistics
package
This library provides a number of common functions and types useful in statistics.  We focus on high performance, numerical robustness, and use of good algorithms.  Where possible, we provide references to the statistical literature. The library's facilities can be divided into four broad categories: * Working with widely used discrete and continuous probability distributions.  (There are dozens of exotic distributions in use; we focus on the most common.) * Computing with sample data: quantile estimation, kernel density estimation, histograms, bootstrap methods, significance testing, and autocorrelation analysis. * Random variate generation under several different distributions. * Common statistical tests for significant differences between samples. Changes in 0.10.1.0 * Kolmogorov-Smirnov nonparametric test added. * Pearson's chi squared test added. * Type class for generating random variates for given distribution is added. * Modules Statistics.Math and Statistics.Constants are moved to the math-functions package. They are still available but marked as deprecated. Changed in 0.10.0.1 * dct and idct now have type Vector Double -> Vector Double Changes in 0.10.0.0: * The type classes Mean and Variance are split in two. This is required for distributions which do not have finite variance or mean. * The S.Sample.KernelDensity module has been renamed, and completely rewritten to be much more robust.  The older module oversmoothed multi-modal data.  (The older module is still available under the name S.Sample.KernelDensity.Simple). * Histogram computation is added, in S.Sample.Histogram. * Forward and inverse discrete Fourier and cosine transforms are added, in S.Transform. * Root finding is added, in S.Math.RootFinding. * The complCumulative function is added to the Distribution class in order to accurately assess probalities P(X>x) which are used in one-tailed tests. * A stdDev function is added to the Variance class for distributions. * The constructor S.Distribution.normalDistr now takes standard deviation instead of variance as its parameter. * A bug in S.Quantile.weightedAvg is fixed. It produced a wrong answer if a sample contained only one element. * Bugs in quantile estimations for chi-square and gamma distribution are fixed. * Integer overlow in mannWhitneyUCriticalValue is fixed. It produced incorrect critical values for moderately large samples. Something around 20 for 32-bit machines and 40 for 64-bit ones. * A bug in mannWhitneyUSignificant is fixed. If either sample was larger than 20, it produced a completely incorrect answer. * One- and two-tailed tests in S.Tests.NonParametric are selected with sum types instead of Bool. * Test results returned as enumeration instead of Bool. * Performance improvements for Mann-Whitney U and Wilcoxon tests. * Module S.Tests.NonParamtric is split into S.Tests.MannWhitneyU and S.Tests.WilcoxonT * sortBy is added to S.Function. * Mean and variance for gamma distribution are fixed. * Much faster cumulative probablity functions for Poisson and hypergeometric distributions. * Better density functions for gamma and Poisson distributions. * Student-T, Fisher-Snedecor F-distributions and Cauchy-Lorentz distrbution are added. * The function S.Function.create is removed. Use generateM from the vector package instead. * Function to perform approximate comparion of doubles is added to S.Function.Comparison * Regularized incomplete beta function and its inverse are added to S.Function. Version 0.10.1.0

Show more results