Name: explicit-exception Version: 0.1.9 License: BSD3 License-File: LICENSE Author: Henning Thielemann Maintainer: Henning Thielemann Homepage: http://www.haskell.org/haskellwiki/Exception Category: Control Stability: Experimental Synopsis: Exceptions which are explicit in the type signature. Description: Synchronous and Asynchronous exceptions which are explicit in the type signature. The first ones are very similar to 'Either' and 'Control.Monad.Error.ErrorT'. The second ones are used for 'System.IO.readFile' and 'System.IO.hGetContents'. This package is a proposal for improved exception handling in Haskell. It strictly separates between handling of exceptional situations (file not found, invalid user input, see ) and (programming) errors (division by zero, index out of range, see ). Handling of the first one is called \"exception handling\", whereas handling of errors is better known as \"debugging\". . For applications see the packages @midi@, @spreadsheet@, @http-monad@. . Although I'm not happy with the identifier style of the Monad Transformer Library (partially intended for unqualified use) I have tried to adopt it for this library, in order to let Haskell programmers get accustomed easily to it. . See also: @unexceptionalio@ Tested-With: GHC==6.8.2 Tested-With: GHC==7.4.2, GHC==7.6.1, GHC==7.8.2 Tested-With: GHC==8.0.1 Cabal-Version: >=1.6 Build-Type: Simple Source-Repository head type: darcs location: http://code.haskell.org/explicit-exception/ Source-Repository this type: darcs location: http://code.haskell.org/explicit-exception/ tag: 0.1.9 Flag buildTests description: Build executables that demonstrate some space leaks default: False Flag splitBase description: Choose the smaller, split-up base package from version 2 on. Library Build-Depends: transformers >=0.2 && <0.6, deepseq >=1.1 && <1.5 If impl(jhc) Build-Depends: applicative >=1.0 && <1.1, base >= 1 && <2 Else If flag(splitBase) Build-Depends: base >= 2 && <5 Else Build-Depends: special-functors >=1.0 && <1.1, base >= 1 && <2 GHC-Options: -Wall Hs-Source-Dirs: src Exposed-Modules: Control.Monad.Exception.Asynchronous Control.Monad.Exception.Asynchronous.Lazy Control.Monad.Exception.Asynchronous.Strict Control.Monad.Exception.Synchronous If !impl(jhc) Other-Modules: Control.Monad.Exception.Warning Control.Monad.Exception.Label Control.Monad.Label System.IO.Straight System.IO.Exception.File System.IO.Exception.BinaryFile System.IO.Exception.TextFile -- System.IO.Exception.Std -- Debug.Error Executable ee-tar If flag(buildTests) Build-Depends: bytestring >=0.9.0.1 && <0.11, tar >=0.3 && <0.4 Else Buildable: False GHC-Options: -Wall Hs-Source-Dirs: src, spaceleak Main-Is: Tar.hs Executable ee-test If flag(buildTests) Build-Depends: bytestring >=0.9.0.1 && <0.11 Else Buildable: False GHC-Options: -Wall Hs-Source-Dirs: src, spaceleak Main-Is: Example.hs Executable ee-unzip If !flag(buildTests) Buildable: False GHC-Options: -Wall Hs-Source-Dirs: spaceleak Main-Is: Unzip.hs Executable ee-writer If !flag(buildTests) Buildable: False Buildable: False GHC-Options: -Wall Hs-Source-Dirs: spaceleak Main-Is: Writer.hs