haskell98 2.0.0.0 → 2.0.0.1
raw patch · 33 files changed
+356/−234 lines, 33 filesdep ~arraydep ~old-timedep ~timePVP: major bump suggested
API removals or changes: PVP suggests a major version bump
Dependency ranges changed: array, old-time, time
API changes (from Hackage documentation)
- Monad: class Functor f :: (* -> *)
+ Monad: class Functor (f :: * -> *)
- Monad: class Monad m :: (* -> *)
+ Monad: class Monad (m :: * -> *)
- Monad: class Monad m => MonadPlus m :: (* -> *)
+ Monad: class Monad m => MonadPlus (m :: * -> *)
- Numeric: readDec :: Num a => ReadS a
+ Numeric: readDec :: (Eq a, Num a) => ReadS a
- Numeric: readHex :: Num a => ReadS a
+ Numeric: readHex :: (Eq a, Num a) => ReadS a
- Numeric: readOct :: Num a => ReadS a
+ Numeric: readOct :: (Eq a, Num a) => ReadS a
- Numeric: showHex :: Integral a => a -> ShowS
+ Numeric: showHex :: (Integral a, Show a) => a -> ShowS
- Numeric: showIntAtBase :: Integral a => a -> (Int -> Char) -> a -> ShowS
+ Numeric: showIntAtBase :: (Integral a, Show a) => a -> (Int -> Char) -> a -> ShowS
- Numeric: showOct :: Integral a => a -> ShowS
+ Numeric: showOct :: (Integral a, Show a) => a -> ShowS
- Prelude: class Functor f :: (* -> *)
+ Prelude: class Functor (f :: * -> *)
- Prelude: class Monad m :: (* -> *)
+ Prelude: class Monad (m :: * -> *)
- Prelude: class (Eq a, Show a) => Num a
+ Prelude: class Num a
- Random: class Random a
+ Random: class Random a where randomRs ival g = x : randomRs ival g' where (x, g') = randomR ival g randoms g = (\ (x, g') -> x : randoms g') (random g) randomRIO range = getStdRandom (randomR range) randomIO = getStdRandom random
- Random: class RandomGen g
+ Random: class RandomGen g where genRange _ = (minBound, maxBound)
Files
- Array.hs +8/−4
- Bits.hs +4/−0
- CError.hs +5/−0
- CForeign.hs +5/−1
- CPUTime.hs +6/−3
- CString.hs +4/−0
- CTypes.hs +4/−0
- Char.hs +13/−9
- Complex.hs +7/−3
- Directory.hs +12/−8
- ForeignPtr.hs +4/−0
- IO.hs +24/−22
- Int.hs +5/−1
- Ix.hs +6/−2
- List.hs +29/−25
- Locale.hs +6/−2
- MarshalAlloc.hs +4/−0
- MarshalArray.hs +4/−0
- MarshalError.hs +4/−0
- MarshalUtils.hs +4/−0
- Maybe.hs +11/−7
- Monad.hs +14/−10
- Numeric.hs +5/−2
- Prelude.hs +108/−105
- Ptr.hs +4/−0
- Random.hs +9/−8
- Ratio.hs +6/−2
- StablePtr.hs +4/−0
- Storable.hs +4/−0
- System.hs +7/−3
- Time.hs +16/−12
- Word.hs +5/−1
- haskell98.cabal +5/−4
Array.hs view
@@ -1,8 +1,12 @@+#if __GLASGOW_HASKELL__ >= 701+{-# LANGUAGE Trustworthy #-}+#endif+ module Array (- module Ix, -- export all of Ix for convenience- Array, array, listArray, (!), bounds, indices, elems, assocs, - accumArray, (//), accum, ixmap- ) where+ module Ix, -- export all of Ix for convenience+ Array, array, listArray, (!), bounds, indices, elems, assocs, + accumArray, (//), accum, ixmap+ ) where import Ix import Data.Array
Bits.hs view
@@ -1,3 +1,7 @@+#if __GLASGOW_HASKELL__ >= 701+{-# LANGUAGE Safe #-}+#endif+ module Bits (module Data.Bits) where import Data.Bits
CError.hs view
@@ -1,2 +1,7 @@+#if __GLASGOW_HASKELL__ >= 701+{-# LANGUAGE Safe #-}+#endif+ module CError (module Foreign.C.Error) where import Foreign.C.Error+
CForeign.hs view
@@ -1,2 +1,6 @@-module CForeign ( module Foreign.C ) where+#if __GLASGOW_HASKELL__ >= 701+{-# LANGUAGE Safe #-}+#endif++module CForeign (module Foreign.C) where import Foreign.C
CPUTime.hs view
@@ -1,5 +1,8 @@-module CPUTime (- getCPUTime, cpuTimePrecision - ) where+#if __GLASGOW_HASKELL__ >= 701+{-# LANGUAGE Safe #-}+#endif +module CPUTime (+ getCPUTime, cpuTimePrecision + ) where import System.CPUTime
CString.hs view
@@ -1,2 +1,6 @@+#if __GLASGOW_HASKELL__ >= 701+{-# LANGUAGE Safe #-}+#endif+ module CString (module Foreign.C.String) where import Foreign.C.String
CTypes.hs view
@@ -1,2 +1,6 @@+#if __GLASGOW_HASKELL__ >= 701+{-# LANGUAGE Safe #-}+#endif+ module CTypes (module Foreign.C.Types) where import Foreign.C.Types
Char.hs view
@@ -1,13 +1,17 @@+#if __GLASGOW_HASKELL__ >= 701+{-# LANGUAGE Safe #-}+#endif+ module Char (- isAscii, isLatin1, isControl, isPrint, isSpace, isUpper, isLower, - isAlpha, isDigit, isOctDigit, isHexDigit, isAlphaNum, - digitToInt, intToDigit,- toUpper, toLower,- ord, chr,- readLitChar, showLitChar, lexLitChar,+ isAscii, isLatin1, isControl, isPrint, isSpace, isUpper, isLower, + isAlpha, isDigit, isOctDigit, isHexDigit, isAlphaNum, + digitToInt, intToDigit,+ toUpper, toLower,+ ord, chr,+ readLitChar, showLitChar, lexLitChar, --- ...and what the Prelude exports- Char, String- ) where+ -- ...and what the Prelude exports+ Char, String+ ) where import Data.Char
Complex.hs view
@@ -1,6 +1,10 @@+#if __GLASGOW_HASKELL__ >= 701+{-# LANGUAGE Safe #-}+#endif+ module Complex (- Complex((:+)), realPart, imagPart, conjugate, - mkPolar, cis, polar, magnitude, phase - ) where+ Complex((:+)), realPart, imagPart, conjugate, + mkPolar, cis, polar, magnitude, phase + ) where import Data.Complex
Directory.hs view
@@ -1,12 +1,16 @@+#if __GLASGOW_HASKELL__ >= 701+{-# LANGUAGE Trustworthy #-}+#endif+ module Directory (- Permissions( Permissions, readable, writable, executable, searchable ), - createDirectory, removeDirectory, removeFile, - renameDirectory, renameFile, getDirectoryContents,- getCurrentDirectory, setCurrentDirectory,- doesFileExist, doesDirectoryExist,- getPermissions, setPermissions,- getModificationTime - ) where+ Permissions( Permissions, readable, writable, executable, searchable ), + createDirectory, removeDirectory, removeFile, + renameDirectory, renameFile, getDirectoryContents,+ getCurrentDirectory, setCurrentDirectory,+ doesFileExist, doesDirectoryExist,+ getPermissions, setPermissions,+ getModificationTime + ) where import System.Directory hiding (Permissions, readable, writable, executable, searchable,
ForeignPtr.hs view
@@ -1,2 +1,6 @@+#if __GLASGOW_HASKELL__ >= 701+{-# LANGUAGE Trustworthy #-}+#endif+ module ForeignPtr (module Foreign.ForeignPtr) where import Foreign.ForeignPtr
IO.hs view
@@ -1,29 +1,31 @@- {-# OPTIONS_GHC -fno-warn-deprecations #-}+#if __GLASGOW_HASKELL__ >= 701+{-# LANGUAGE Safe #-}+#endif module IO (- Handle, HandlePosn,- IOMode(ReadMode,WriteMode,AppendMode,ReadWriteMode),- BufferMode(NoBuffering,LineBuffering,BlockBuffering),- SeekMode(AbsoluteSeek,RelativeSeek,SeekFromEnd),- stdin, stdout, stderr, - openFile, hClose, hFileSize, hIsEOF, isEOF,- hSetBuffering, hGetBuffering, hFlush, - hGetPosn, hSetPosn, hSeek, - hWaitForInput, hReady, hGetChar, hGetLine, hLookAhead, hGetContents, - hPutChar, hPutStr, hPutStrLn, hPrint,- hIsOpen, hIsClosed, hIsReadable, hIsWritable, hIsSeekable,- isAlreadyExistsError, isDoesNotExistError, isAlreadyInUseError, - isFullError, isEOFError,- isIllegalOperation, isPermissionError, isUserError, - ioeGetErrorString, ioeGetHandle, ioeGetFileName,- try, bracket, bracket_,+ Handle, HandlePosn,+ IOMode(ReadMode,WriteMode,AppendMode,ReadWriteMode),+ BufferMode(NoBuffering,LineBuffering,BlockBuffering),+ SeekMode(AbsoluteSeek,RelativeSeek,SeekFromEnd),+ stdin, stdout, stderr, + openFile, hClose, hFileSize, hIsEOF, isEOF,+ hSetBuffering, hGetBuffering, hFlush, + hGetPosn, hSetPosn, hSeek, + hWaitForInput, hReady, hGetChar, hGetLine, hLookAhead, hGetContents, + hPutChar, hPutStr, hPutStrLn, hPrint,+ hIsOpen, hIsClosed, hIsReadable, hIsWritable, hIsSeekable,+ isAlreadyExistsError, isDoesNotExistError, isAlreadyInUseError, + isFullError, isEOFError,+ isIllegalOperation, isPermissionError, isUserError, + ioeGetErrorString, ioeGetHandle, ioeGetFileName,+ try, bracket, bracket_, - -- ...and what the Prelude exports- IO, FilePath, IOError, ioError, userError, catch, interact,- putChar, putStr, putStrLn, print, getChar, getLine, getContents,- readFile, writeFile, appendFile, readIO, readLn- ) where+ -- ...and what the Prelude exports+ IO, FilePath, IOError, ioError, userError, catch, interact,+ putChar, putStr, putStrLn, print, getChar, getLine, getContents,+ readFile, writeFile, appendFile, readIO, readLn+ ) where import System.IO import System.IO.Error hiding (catch, try)
Int.hs view
@@ -1,2 +1,6 @@-module Int ( module Data.Int ) where+#if __GLASGOW_HASKELL__ >= 701+{-# LANGUAGE Safe #-}+#endif++module Int (module Data.Int) where import Data.Int
Ix.hs view
@@ -1,5 +1,9 @@+#if __GLASGOW_HASKELL__ >= 701+{-# LANGUAGE Safe #-}+#endif+ module Ix (- Ix(range, index, inRange), rangeSize- ) where+ Ix(range, index, inRange), rangeSize+ ) where import Data.Ix
List.hs view
@@ -1,29 +1,33 @@+#if __GLASGOW_HASKELL__ >= 701+{-# LANGUAGE Safe #-}+#endif+ module List (- elemIndex, elemIndices,- find, findIndex, findIndices,- nub, nubBy, delete, deleteBy, (\\), deleteFirstsBy,- union, unionBy, intersect, intersectBy,- intersperse, transpose, partition, group, groupBy,- inits, tails, isPrefixOf, isSuffixOf,- mapAccumL, mapAccumR,- sort, sortBy, insert, insertBy, maximumBy, minimumBy,- genericLength, genericTake, genericDrop,- genericSplitAt, genericIndex, genericReplicate,- zip4, zip5, zip6, zip7,- zipWith4, zipWith5, zipWith6, zipWith7,- unzip4, unzip5, unzip6, unzip7, unfoldr,+ elemIndex, elemIndices,+ find, findIndex, findIndices,+ nub, nubBy, delete, deleteBy, (\\), deleteFirstsBy,+ union, unionBy, intersect, intersectBy,+ intersperse, transpose, partition, group, groupBy,+ inits, tails, isPrefixOf, isSuffixOf,+ mapAccumL, mapAccumR,+ sort, sortBy, insert, insertBy, maximumBy, minimumBy,+ genericLength, genericTake, genericDrop,+ genericSplitAt, genericIndex, genericReplicate,+ zip4, zip5, zip6, zip7,+ zipWith4, zipWith5, zipWith6, zipWith7,+ unzip4, unzip5, unzip6, unzip7, unfoldr, - -- ...and what the Prelude exports- -- []((:), []), -- This is built-in syntax- map, (++), concat, filter,- head, last, tail, init, null, length, (!!),- foldl, foldl1, scanl, scanl1, foldr, foldr1, scanr, scanr1,- iterate, repeat, replicate, cycle,- take, drop, splitAt, takeWhile, dropWhile, span, break,- lines, words, unlines, unwords, reverse, and, or,- any, all, elem, notElem, lookup,- sum, product, maximum, minimum, concatMap, - zip, zip3, zipWith, zipWith3, unzip, unzip3- ) where+ -- ...and what the Prelude exports+ -- []((:), []), -- This is built-in syntax+ map, (++), concat, filter,+ head, last, tail, init, null, length, (!!),+ foldl, foldl1, scanl, scanl1, foldr, foldr1, scanr, scanr1,+ iterate, repeat, replicate, cycle,+ take, drop, splitAt, takeWhile, dropWhile, span, break,+ lines, words, unlines, unwords, reverse, and, or,+ any, all, elem, notElem, lookup,+ sum, product, maximum, minimum, concatMap, + zip, zip3, zipWith, zipWith3, unzip, unzip3+ ) where import Data.List hiding (foldl', splitAt)
Locale.hs view
@@ -1,6 +1,10 @@+#if __GLASGOW_HASKELL__ >= 701+{-# LANGUAGE Trustworthy #-}+#endif+ module Locale (- TimeLocale(..), defaultTimeLocale- ) where+ TimeLocale(..), defaultTimeLocale+ ) where import System.Locale ( -- just the bits that are specified by Haskell 98
MarshalAlloc.hs view
@@ -1,2 +1,6 @@+#if __GLASGOW_HASKELL__ >= 701+{-# LANGUAGE Safe #-}+#endif+ module MarshalAlloc (module Foreign.Marshal.Alloc) where import Foreign.Marshal.Alloc
MarshalArray.hs view
@@ -1,2 +1,6 @@+#if __GLASGOW_HASKELL__ >= 701+{-# LANGUAGE Safe #-}+#endif+ module MarshalArray (module Foreign.Marshal.Array) where import Foreign.Marshal.Array
MarshalError.hs view
@@ -1,3 +1,7 @@+#if __GLASGOW_HASKELL__ >= 701+{-# LANGUAGE Safe #-}+#endif+ module MarshalError ( module Foreign.Marshal.Error, IOErrorType,
MarshalUtils.hs view
@@ -1,2 +1,6 @@+#if __GLASGOW_HASKELL__ >= 701+{-# LANGUAGE Safe #-}+#endif+ module MarshalUtils (module Foreign.Marshal.Utils) where import Foreign.Marshal.Utils
Maybe.hs view
@@ -1,11 +1,15 @@+#if __GLASGOW_HASKELL__ >= 701+{-# LANGUAGE Safe #-}+#endif+ module Maybe (- isJust, isNothing,- fromJust, fromMaybe, listToMaybe, maybeToList,- catMaybes, mapMaybe,+ isJust, isNothing,+ fromJust, fromMaybe, listToMaybe, maybeToList,+ catMaybes, mapMaybe, - -- ...and what the Prelude exports- Maybe(Nothing, Just),- maybe- ) where+ -- ...and what the Prelude exports+ Maybe(Nothing, Just),+ maybe+ ) where import Data.Maybe
Monad.hs view
@@ -1,14 +1,18 @@+#if __GLASGOW_HASKELL__ >= 701+{-# LANGUAGE Safe #-}+#endif+ module Monad (- MonadPlus(mzero, mplus),- join, guard, when, unless, ap,- msum,- filterM, mapAndUnzipM, zipWithM, zipWithM_, foldM, - liftM, liftM2, liftM3, liftM4, liftM5,+ MonadPlus(mzero, mplus),+ join, guard, when, unless, ap,+ msum,+ filterM, mapAndUnzipM, zipWithM, zipWithM_, foldM, + liftM, liftM2, liftM3, liftM4, liftM5, - -- ...and what the Prelude exports- Monad((>>=), (>>), return, fail),- Functor(fmap),- mapM, mapM_, sequence, sequence_, (=<<), - ) where+ -- ...and what the Prelude exports+ Monad((>>=), (>>), return, fail),+ Functor(fmap),+ mapM, mapM_, sequence, sequence_, (=<<), + ) where import Control.Monad
Numeric.hs view
@@ -1,4 +1,7 @@ {-# LANGUAGE PackageImports #-}+#if __GLASGOW_HASKELL__ >= 701+{-# LANGUAGE Safe #-}+#endif module Numeric ( @@ -27,7 +30,7 @@ readSigned, -- :: (Real a) => ReadS a -> ReadS a readInt, -- :: (Integral a) => a -> (Char -> Bool)- -- -> (Char -> Int) -> ReadS a+ -- -> (Char -> Int) -> ReadS a readDec, -- :: (Integral a) => ReadS a readOct, -- :: (Integral a) => ReadS a readHex, -- :: (Integral a) => ReadS a@@ -40,6 +43,6 @@ fromRat, -- :: (RealFloat a) => Rational -> a - ) where+ ) where import "base" Numeric
Prelude.hs view
@@ -1,4 +1,7 @@-{-# LANGUAGE CPP, NoImplicitPrelude, BangPatterns, PackageImports #-}+{-# LANGUAGE NoImplicitPrelude, BangPatterns, PackageImports #-}+#if __GLASGOW_HASKELL__ >= 701+{-# LANGUAGE Trustworthy #-}+#endif -- | -- The Haskell 98 Prelude: a standard module imported by default@@ -7,131 +10,131 @@ module Prelude ( - -- * Standard types, classes and related functions+ -- * Standard types, classes and related functions - -- ** Basic data types- Bool(False, True),- (&&), (||), not, otherwise,+ -- ** Basic data types+ Bool(False, True),+ (&&), (||), not, otherwise, - Maybe(Nothing, Just),- maybe,+ Maybe(Nothing, Just),+ maybe, - Either(Left, Right),- either,+ Either(Left, Right),+ either, - Ordering(LT, EQ, GT),- Char, String,+ Ordering(LT, EQ, GT),+ Char, String, - -- *** Tuples- fst, snd, curry, uncurry,+ -- *** Tuples+ fst, snd, curry, uncurry, #if defined(__NHC__)- []((:), []), -- Not legal Haskell 98;- -- ... available through built-in syntax- module Data.Tuple, -- Includes tuple types- ()(..), -- Not legal Haskell 98- (->), -- ... available through built-in syntax+ []((:), []), -- Not legal Haskell 98;+ -- ... available through built-in syntax+ module Data.Tuple, -- Includes tuple types+ ()(..), -- Not legal Haskell 98+ (->), -- ... available through built-in syntax #endif #ifdef __HUGS__- (:), -- Not legal Haskell 98+ (:), -- Not legal Haskell 98 #endif - -- ** Basic type classes- Eq((==), (/=)),- Ord(compare, (<), (<=), (>=), (>), max, min),- Enum(succ, pred, toEnum, fromEnum, enumFrom, enumFromThen,- enumFromTo, enumFromThenTo),- Bounded(minBound, maxBound),+ -- ** Basic type classes+ Eq((==), (/=)),+ Ord(compare, (<), (<=), (>=), (>), max, min),+ Enum(succ, pred, toEnum, fromEnum, enumFrom, enumFromThen,+ enumFromTo, enumFromThenTo),+ Bounded(minBound, maxBound), - -- ** Numbers+ -- ** Numbers - -- *** Numeric types- Int, Integer, Float, Double,- Rational,+ -- *** Numeric types+ Int, Integer, Float, Double,+ Rational, - -- *** Numeric type classes- Num((+), (-), (*), negate, abs, signum, fromInteger),- Real(toRational),- Integral(quot, rem, div, mod, quotRem, divMod, toInteger),- Fractional((/), recip, fromRational),- Floating(pi, exp, log, sqrt, (**), logBase, sin, cos, tan,- asin, acos, atan, sinh, cosh, tanh, asinh, acosh, atanh),- RealFrac(properFraction, truncate, round, ceiling, floor),- RealFloat(floatRadix, floatDigits, floatRange, decodeFloat,- encodeFloat, exponent, significand, scaleFloat, isNaN,- isInfinite, isDenormalized, isIEEE, isNegativeZero, atan2),+ -- *** Numeric type classes+ Num((+), (-), (*), negate, abs, signum, fromInteger),+ Real(toRational),+ Integral(quot, rem, div, mod, quotRem, divMod, toInteger),+ Fractional((/), recip, fromRational),+ Floating(pi, exp, log, sqrt, (**), logBase, sin, cos, tan,+ asin, acos, atan, sinh, cosh, tanh, asinh, acosh, atanh),+ RealFrac(properFraction, truncate, round, ceiling, floor),+ RealFloat(floatRadix, floatDigits, floatRange, decodeFloat,+ encodeFloat, exponent, significand, scaleFloat, isNaN,+ isInfinite, isDenormalized, isIEEE, isNegativeZero, atan2), - -- *** Numeric functions- subtract, even, odd, gcd, lcm, (^), (^^),- fromIntegral, realToFrac,+ -- *** Numeric functions+ subtract, even, odd, gcd, lcm, (^), (^^),+ fromIntegral, realToFrac, - -- ** Monads and functors- Monad((>>=), (>>), return, fail),- Functor(fmap),- mapM, mapM_, sequence, sequence_, (=<<),+ -- ** Monads and functors+ Monad((>>=), (>>), return, fail),+ Functor(fmap),+ mapM, mapM_, sequence, sequence_, (=<<), - -- ** Miscellaneous functions- id, const, (.), flip, ($), until,- asTypeOf, error, undefined,- seq, ($!),+ -- ** Miscellaneous functions+ id, const, (.), flip, ($), until,+ asTypeOf, error, undefined,+ seq, ($!), - -- * List operations- map, (++), filter,- head, last, tail, init, null, length, (!!),- reverse,- -- ** Reducing lists (folds)- foldl, foldl1, foldr, foldr1,- -- *** Special folds- and, or, any, all,- sum, product,- concat, concatMap,- maximum, minimum,- -- ** Building lists- -- *** Scans- scanl, scanl1, scanr, scanr1,- -- *** Infinite lists- iterate, repeat, replicate, cycle,- -- ** Sublists- take, drop, splitAt, takeWhile, dropWhile, span, break,- -- ** Searching lists- elem, notElem, lookup,- -- ** Zipping and unzipping lists- zip, zip3, zipWith, zipWith3, unzip, unzip3,- -- ** Functions on strings- lines, words, unlines, unwords,+ -- * List operations+ map, (++), filter,+ head, last, tail, init, null, length, (!!),+ reverse,+ -- ** Reducing lists (folds)+ foldl, foldl1, foldr, foldr1,+ -- *** Special folds+ and, or, any, all,+ sum, product,+ concat, concatMap,+ maximum, minimum,+ -- ** Building lists+ -- *** Scans+ scanl, scanl1, scanr, scanr1,+ -- *** Infinite lists+ iterate, repeat, replicate, cycle,+ -- ** Sublists+ take, drop, splitAt, takeWhile, dropWhile, span, break,+ -- ** Searching lists+ elem, notElem, lookup,+ -- ** Zipping and unzipping lists+ zip, zip3, zipWith, zipWith3, unzip, unzip3,+ -- ** Functions on strings+ lines, words, unlines, unwords, - -- * Converting to and from @String@- -- ** Converting to @String@- ShowS,- Show(showsPrec, showList, show),- shows,- showChar, showString, showParen,- -- ** Converting from @String@- ReadS,- Read(readsPrec, readList),- reads, readParen, read, lex,+ -- * Converting to and from @String@+ -- ** Converting to @String@+ ShowS,+ Show(showsPrec, showList, show),+ shows,+ showChar, showString, showParen,+ -- ** Converting from @String@+ ReadS,+ Read(readsPrec, readList),+ reads, readParen, read, lex, - -- * Basic Input and output- IO,- -- ** Simple I\/O operations- -- All I/O functions defined here are character oriented. The- -- treatment of the newline character will vary on different systems.- -- For example, two characters of input, return and linefeed, may- -- read as a single newline character. These functions cannot be- -- used portably for binary I/O.- -- *** Output functions- putChar,- putStr, putStrLn, print,- -- *** Input functions- getChar,- getLine, getContents, interact,- -- *** Files- FilePath,- readFile, writeFile, appendFile, readIO, readLn,- -- ** Exception handling in the I\/O monad- IOError, ioError, userError, catch+ -- * Basic Input and output+ IO,+ -- ** Simple I\/O operations+ -- All I/O functions defined here are character oriented. The+ -- treatment of the newline character will vary on different systems.+ -- For example, two characters of input, return and linefeed, may+ -- read as a single newline character. These functions cannot be+ -- used portably for binary I/O.+ -- *** Output functions+ putChar,+ putStr, putStrLn, print,+ -- *** Input functions+ getChar,+ getLine, getContents, interact,+ -- *** Files+ FilePath,+ readFile, writeFile, appendFile, readIO, readLn,+ -- ** Exception handling in the I\/O monad+ IOError, ioError, userError, catch - ) where+ ) where #ifndef __HUGS__ import qualified "base" Control.Exception.Base as New (catch)
Ptr.hs view
@@ -1,2 +1,6 @@+#if __GLASGOW_HASKELL__ >= 701+{-# LANGUAGE Safe #-}+#endif+ module Ptr (module Foreign.Ptr) where import Foreign.Ptr
Random.hs view
@@ -1,7 +1,8 @@-{-# LANGUAGE CPP #-}+#if __GLASGOW_HASKELL__ >= 701+{-# LANGUAGE Trustworthy #-}+#endif -module Random- (+module Random ( -- $intro @@ -30,7 +31,7 @@ -- * References -- $references - ) where+ ) where import Prelude @@ -81,7 +82,7 @@ -- generators. This is very useful in functional programs (for example, when -- passing a random number generator down to recursive calls), but very -- little work has been done on statistically robust implementations of- -- 'split' (["System.Random\#Burton", "System.Random\#Hellekalek"]+ -- 'split' (["Random\#Burton", "Random\#Hellekalek"] -- are the only examples we know of). split :: g -> (g, g) @@ -112,7 +113,7 @@ The result of repeatedly using 'next' should be at least as statistically robust as the /Minimal Standard Random Number Generator/ described by-["System.Random\#Park", "System.Random\#Carta"].+["Random\#Park", "Random\#Carta"]. Until more is known about implementations of 'split', all we require is that 'split' deliver generators that are (a) not identical and (b) independently robust in the sense just given.@@ -228,12 +229,12 @@ randoms g = (\(x,g') -> x : randoms g') (random g) -- | A variant of 'randomR' that uses the global random number generator- -- (see "System.Random#globalrng").+ -- (see "Random#globalrng"). randomRIO :: (a,a) -> IO a randomRIO range = getStdRandom (randomR range) -- | A variant of 'random' that uses the global random number generator- -- (see "System.Random#globalrng").+ -- (see "Random#globalrng"). randomIO :: IO a randomIO = getStdRandom random
Ratio.hs view
@@ -1,5 +1,9 @@+#if __GLASGOW_HASKELL__ >= 701+{-# LANGUAGE Safe #-}+#endif+ module Ratio (- Ratio, Rational, (%), numerator, denominator, approxRational- ) where+ Ratio, Rational, (%), numerator, denominator, approxRational+ ) where import Data.Ratio
StablePtr.hs view
@@ -1,2 +1,6 @@+#if __GLASGOW_HASKELL__ >= 701+{-# LANGUAGE Safe #-}+#endif+ module StablePtr (module Foreign.StablePtr) where import Foreign.StablePtr
Storable.hs view
@@ -1,2 +1,6 @@+#if __GLASGOW_HASKELL__ >= 701+{-# LANGUAGE Safe #-}+#endif+ module Storable (module Foreign.Storable) where import Foreign.Storable
System.hs view
@@ -1,7 +1,11 @@+#if __GLASGOW_HASKELL__ >= 701+{-# LANGUAGE Trustworthy #-}+#endif+ module System (- ExitCode(ExitSuccess,ExitFailure),- getArgs, getProgName, getEnv, system, exitWith, exitFailure- ) where+ ExitCode(ExitSuccess,ExitFailure),+ getArgs, getProgName, getEnv, system, exitWith, exitFailure+ ) where import System.Exit import System.Environment
Time.hs view
@@ -1,15 +1,19 @@+#if __GLASGOW_HASKELL__ >= 701+{-# LANGUAGE Trustworthy #-}+#endif+ module Time (- ClockTime, - Month(January,February,March,April,May,June,- July,August,September,October,November,December),- Day(Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday),- CalendarTime(CalendarTime, ctYear, ctMonth, ctDay, ctHour, ctMin,- ctSec, ctPicosec, ctWDay, ctYDay, ctTZName, ctTZ, ctIsDST),- TimeDiff(TimeDiff, tdYear, tdMonth, tdDay, tdHour,- tdMin, tdSec, tdPicosec),- getClockTime, addToClockTime, diffClockTimes,- toCalendarTime, toUTCTime, toClockTime,- calendarTimeToString, formatCalendarTime - ) where+ ClockTime, + Month(January,February,March,April,May,June,+ July,August,September,October,November,December),+ Day(Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday),+ CalendarTime(CalendarTime, ctYear, ctMonth, ctDay, ctHour, ctMin,+ ctSec, ctPicosec, ctWDay, ctYDay, ctTZName, ctTZ, ctIsDST),+ TimeDiff(TimeDiff, tdYear, tdMonth, tdDay, tdHour,+ tdMin, tdSec, tdPicosec),+ getClockTime, addToClockTime, diffClockTimes,+ toCalendarTime, toUTCTime, toClockTime,+ calendarTimeToString, formatCalendarTime + ) where import System.Time
Word.hs view
@@ -1,2 +1,6 @@-module Word ( module Data.Word ) where+#if __GLASGOW_HASKELL__ >= 701+{-# LANGUAGE Safe #-}+#endif++module Word (module Data.Word) where import Data.Word
haskell98.cabal view
@@ -1,5 +1,5 @@ name: haskell98-version: 2.0.0.0+version: 2.0.0.1 license: BSD3 license-file: LICENSE maintainer: libraries@haskell.org@@ -19,11 +19,11 @@ Library build-depends: base >= 3 && < 5, directory >= 1.1 && < 1.2,- old-time >= 1.0 && < 1.1,+ old-time >= 1.0 && < 1.2, old-locale >= 1.0 && < 1.1, process >= 1.0 && < 1.2,- array >= 0.3 && < 0.4,- time >= 1.2 && < 1.3+ array >= 0.3 && < 0.5,+ time >= 1.2 && < 1.5 exposed-modules: -- Haskell 98 Prelude, Array, CPUTime, Char, Complex, Directory, IO,@@ -34,6 +34,7 @@ MarshalAlloc, MarshalArray, MarshalError, MarshalUtils, Ptr, StablePtr, Storable, Word exposed: False+ extensions: CPP source-repository head type: git