Name: IOSpec Version: 0.3.1.1 License: BSD3 License-file: LICENSE Cabal-Version: >= 1.6 Author: Wouter Swierstra, Yusaku Hashimoto, Nikolay Amiantov, Bertram Felgenhauer Maintainer: Bertram Felgenhauer Homepage: https://github.com/lambdabot/IOSpec Synopsis: A pure specification of the IO monad. Description: This package consists of several modules, that give a pure specification of functions in the IO monad: . * "Test.IOSpec.Fork": a pure specification of 'forkIO'. * "Test.IOSpec.IORef": a pure specification of most functions that create and manipulate on 'IORefs'. * "Test.IOSpec.MVar": a pure specification of most functions that create and manipulate and 'MVars'. * "Test.IOSpec.STM": a pure specification of 'atomically' and the 'STM' monad. * "Test.IOSpec.Teletype": a pure specification of 'getChar', 'putChar', and several related Prelude functions. . Besides these modules containing the specifications, there are a few other important modules: . * "Test.IOSpec.Types": defines the 'IOSpec' type and several amenities. * "Test.IOSpec.VirtualMachine": defines a virtual machine on which to execute pure specifications. * "Test.IOSpec.Surrogate": a drop-in replacement for the other modules. Import this and recompile your code once you've finished testing and debugging. . There are several well-documented examples included with the source distribution. Category: Testing Build-Type: Simple Extra-source-files: README , examples/Channels.hs , examples/Echo.hs , examples/Queues.hs , examples/Refs.hs , examples/Sudoku.hs Source-Repository head Type: git Location: https://github.com/lambdabot/IOSpec Library Build-Depends: base >= 4.8.0.0 && < 5 , mtl , QuickCheck >= 2 && < 3 , Stream Extensions: MultiParamTypeClasses, OverlappingInstances Ghc-options: -Wall Hs-source-dirs: src Exposed-modules: Test.IOSpec , Test.IOSpec.Fork , Test.IOSpec.IORef , Test.IOSpec.MVar , Test.IOSpec.STM , Test.IOSpec.Surrogate , Test.IOSpec.Teletype , Test.IOSpec.Types , Test.IOSpec.VirtualMachine