packages feed

global-0.2.0.0: global.cabal

name:               global
-- Don't forget to bump the tag and CHANGELOG placeholder too.
version:            0.2.0.0
cabal-version:      >= 1.18
build-type:         Simple
license:            BSD3
license-file:       LICENSE
copyright:          Copyright (C) 2011 Byron James Johnson
author:             Byron James Johnson
maintainer:         ByronJohnsonFP@gmail.com
category:           Data, Language, System
tested-with:        GHC == 7.8.3
extra-source-files:
-- The extra-doc-files property requires cabal-version >= 1.18.
extra-doc-files:
  README.md
 ,CHANGELOG.md
synopsis:           Haskell2010 compatible library enabling unique top-level declarations
description:
  The "global" library enables the declaration of unique top-level
  declarations, including references to mutable state accessible via IO.
  .
  Conceptually, this library defines primitive means of unique declarations,
  whose internal implementation is hidden from users, and uses Template
  Haskell to provide a public interface.  Thus, it is not necessarily
  portable across various implementations.  It is currently designed to be
  compatible with GHC.  Users do not need to be aware of the internal,
  low-level implementation; if a more portable, stable means of providing the
  same functionality becomes available, the library can be updated without
  changing the provided public interface.
  .
  While this library provides the basis for an alternative approach to
  managing state, users should consider using instead the @transformers@
  library's StateT transformer, possibly accompanied with @fclabels@ to
  manage hierarchical state (libraries that provide a higher-level means of
  managing monad stacks based on transformers include @mtl@, @monads-tf@, and
  @monad-operations@).  This library might be more appropriately used for
  other purposes, such as to provide a means to directly translate C to
  Haskell with a result whose style more closely resembles that of the
  original code.  Users should also consider using the language feature
  @ImplicitParams@.
  .
  Examples of small programs that use this library are provided in the
  repository in which it resides.

library
  default-language:  Haskell2010
  hs-source-dirs:    src
  ghc-options:       -Wall
  build-depends:
    base                     >= 4       && < 5
   ,template-haskell         >= 2.8.0.0 && < 3
   ,stm                      >= 2       && < 3
   ,tagged                   >= 0       && < 1
   ,loch-th                  >= 0.1     && < 1
   ,haskell-src-exts-qq      >= 0.3     && < 1
   ,syntax-trees-fork-bairyn >= 0.1.2.1 && < 1
   ,haskell-src-exts         >= 1.9     && < 2
   ,SafeSemaphore            >= 0.7     && < 1
  exposed-modules:
    Data.Global
  default-extensions:
    --,GADTs
    TemplateHaskell
    --,DeriveDataTypeable
  other-extensions:
    FlexibleInstances

source-repository head
  type:     git
  location: git@github.com:bairyn/global.git

source-repository this
  type:     git
  location: git@github.com:bairyn/global.git
  tag:      v0.2.0.0