Monad -package:rerebase -package:haskell-gi-base is:module -package:ghc
The environment in which most criterion code executes.
Reexporting useful monadic stuff.
Internal stuff that most people shouldn't have to use. This module
mostly deals with the internals of the CGIT monad transformer.
Monad properties
You will need TypeApplications to use these.
JSM monad keeps track of the JavaScript context
Monad class implementing an Open Sound Control transport.
The
Eff monad.
This module is intended for internal use only, and may change without
warning in subsequent releases.
Reexporting useful monadic stuff.
Monad properties
You will need TypeApplications to use these.
Allow to run operation in ST and IO, without having to distinguinsh
between the two. Most operations exposes the bare nuts and bolts of
how IO and ST actually works, and relatively easy to shoot yourself in
the foot
this is highly similar to the Control.Monad.Primitive in the primitive
package
- Domain and PurposeGHC.JS.JStg.Monad defines the computational
environment for the eDSL that we use to write the JS Backend's RTS.
Its purpose is to ensure unique identifiers are generated throughout
the backend and that we can use the host language to ensure references
are not mixed.
- StrategyThe monad is a straightforward state monad which holds an
environment holds a pointer to a prefix to tag identifiers with and an
infinite stream of identifiers.
- UsageOne should almost never need to directly use the functions in
this module. Instead one should opt to use the combinators in
Make, the sole exception to this is the withTag
function which is used to change the prefix of identifiers for a given
computation. For example, the rts uses this function to tag all
identifiers generated by the RTS code as RTS_N, where N is some
unique.
The
ZonkM monad, a stripped down
TcM, used when
zonking within the typechecker in
GHC.Tc.Zonk.TcType.
See Note [Module structure for zonking] in GHC.Tc.Zonk.Type.
Utilities related to Monad and Applicative classes Mostly for
backwards compatibility.