name: monad-var version: 0.1.2.0 synopsis: Generic operations over variables description: The aim of this library is to provide a unified set of operations (@new@, @read@, @write@, @swap@, various strict @mutate*@ functions and their derivatives (like mutate-and-return-the-old-value) and a certain interface for @MVar@-like things) over all common variable types: @IORef@, @STRef s@, @MVar@, @TVar@, @TMVar@. When possible type classes are generalized to be over abstract containers rather than variables: e.g. it'd make sense to implement @MonadRead TChan@ and @MonadMutate_ Vector@ instances, but no such instances are provided right now. There are also some lenses to be described in an upcoming blog post. homepage: https://github.com/effectfully/monad-var#readme license: BSD3 license-file: LICENSE author: effectfully maintainer: effectfully@gmail.com copyright: 2017 effectfully category: Control build-type: Simple extra-source-files: README.md cabal-version: >=1.10 library hs-source-dirs: src exposed-modules: MonadVar MonadVar.Lens build-depends: base >= 4.7 && < 5, transformers >= 0.4 && < 0.6, stm >= 2.2 && < 2.5 default-language: Haskell2010 ghc-options: -O2 -Wall -fno-warn-unused-do-bind source-repository head type: git location: https://github.com/effectfully/monad-var