mirror of
https://github.com/barrucadu/dejafu.git
synced 2024-11-26 20:30:30 +03:00
95 lines
3.4 KiB
Plaintext
95 lines
3.4 KiB
Plaintext
|
-- Initial monad-conc.cabal generated by cabal init. For further
|
||
|
-- documentation, see http://haskell.org/cabal/users-guide/
|
||
|
|
||
|
name: concurrency
|
||
|
version: 1.0.0.0
|
||
|
synopsis: A typeclass for concurrency
|
||
|
|
||
|
description:
|
||
|
A typeclass abstraction over much of Control.Concurrent (and some
|
||
|
extras!). If you're looking for a general introduction to Haskell
|
||
|
concurrency, you should check out the excellent Parallel and
|
||
|
Concurrent Programming in Haskell, by Simon Marlow. If you are
|
||
|
already familiar with concurrent Haskell, just change all the
|
||
|
imports from Control.Concurrent.* to Control.Concurrent.Classy.* and
|
||
|
fix the type errors.
|
||
|
.
|
||
|
A brief list of supported functionality:
|
||
|
.
|
||
|
* Threads: the @forkIO*@ and @forkOn*@ functions, although bound
|
||
|
threads are not supported.
|
||
|
.
|
||
|
* Getting and setting capablities.
|
||
|
.
|
||
|
* Yielding and delaying.
|
||
|
.
|
||
|
* Mutable state: STM, @MVar@, and @IORef@.
|
||
|
.
|
||
|
* Atomic compare-and-swap for @IORef@.
|
||
|
.
|
||
|
* Exceptions.
|
||
|
.
|
||
|
* All of the data structures in Control.Concurrent.* and
|
||
|
Control.Concurrent.STM.* have typeclass-abstracted equivalents.
|
||
|
.
|
||
|
This is quite a rich set of functionality, although it is not
|
||
|
complete. If there is something else you need, file an issue!
|
||
|
.
|
||
|
This used to be part of dejafu, but with the dejafu-0.4.0.0 release,
|
||
|
it was split out into its own package.
|
||
|
.
|
||
|
See the <https://github.com/barrucadu/dejafu README> for more
|
||
|
details.
|
||
|
|
||
|
homepage: https://github.com/barrucadu/dejafu
|
||
|
license: MIT
|
||
|
license-file: LICENSE
|
||
|
author: Michael Walker
|
||
|
maintainer: mike@barrucadu.co.uk
|
||
|
-- copyright:
|
||
|
category: Concurrency
|
||
|
build-type: Simple
|
||
|
-- extra-source-files:
|
||
|
cabal-version: >=1.10
|
||
|
|
||
|
source-repository head
|
||
|
type: git
|
||
|
location: https://github.com/barrucadu/dejafu.git
|
||
|
|
||
|
source-repository this
|
||
|
type: git
|
||
|
location: https://github.com/barrucadu/dejafu.git
|
||
|
tag: concurrency-0.1.0.0
|
||
|
|
||
|
library
|
||
|
exposed-modules: Control.Monad.Conc.Class
|
||
|
, Control.Monad.STM.Class
|
||
|
|
||
|
, Control.Concurrent.Classy
|
||
|
, Control.Concurrent.Classy.Chan
|
||
|
, Control.Concurrent.Classy.CRef
|
||
|
, Control.Concurrent.Classy.MVar
|
||
|
, Control.Concurrent.Classy.QSem
|
||
|
, Control.Concurrent.Classy.QSemN
|
||
|
, Control.Concurrent.Classy.STM
|
||
|
, Control.Concurrent.Classy.STM.TVar
|
||
|
, Control.Concurrent.Classy.STM.TMVar
|
||
|
, Control.Concurrent.Classy.STM.TChan
|
||
|
, Control.Concurrent.Classy.STM.TQueue
|
||
|
, Control.Concurrent.Classy.STM.TBQueue
|
||
|
, Control.Concurrent.Classy.STM.TArray
|
||
|
|
||
|
-- other-modules:
|
||
|
-- other-extensions:
|
||
|
build-depends: base >=4.8 && <5
|
||
|
, array >=0.5 && <0.6
|
||
|
, atomic-primops >=0.8 && <0.9
|
||
|
, exceptions >=0.7 && <0.9
|
||
|
, monad-control >=1.0 && <1.1
|
||
|
, mtl >=2.2 && <2.3
|
||
|
, stm >=2.4 && <2.5
|
||
|
, transformers >=0.4 && <0.6
|
||
|
-- hs-source-dirs:
|
||
|
default-language: Haskell2010
|
||
|
ghc-options: -Wall
|