More markup fixes...
Haskell threads can communicate via 'MVar's, a kind of synchronised
mutable variable (see "Control.Concurrent.MVar"). Several common
concurrency abstractions can be built from 'MVar's, and these are
-provided by the "Concurrent" library. Threads may also communicate
-via exceptions.
+provided by the "Control.Concurrent" library. Threads may also
+communicate via exceptions.
-}
{- $conc_scheduling
> return mvar
Note that we use 'finally' from the
- "Exception" module to make sure that the
+ "Control.Exception" module to make sure that the
'MVar' is written to even if the thread dies or
is killed for some reason.
The rescheduling timer runs on a 20ms granularity by
default, but this may be altered using the
- @-i<n>@ RTS option. After a rescheduling
+ @-i\<n\>@ RTS option. After a rescheduling
\"tick\" the running thread is pre-empted as soon as
possible.
-- 'mapException'
-- | This function maps one exception into another as proposed in the
--- paper "A semantics for imprecise exceptions".
+-- paper \"A semantics for imprecise exceptions\".
-- Notice that the usage of 'unsafePerformIO' is safe here.
-- integers. Instances of the class 'Bits' for the 'Int' and
-- 'Integer' types are available from this module, and instances for
-- explicitly sized integral types are available from the
--- "Int" and "Word" modules.
+-- "Data.Int" and "Data.Word" modules.
--
-----------------------------------------------------------------------------
--
-- Class of index types.
--
--- The "Ix" class is used to map a continuous subrange of values in a type onto
+-- The 'Ix' class is used to map a continuous subrange of values in a type onto
-- integers. It is used primarily for array indexing (see Section 6
--- <http://www.haskell.org/onlinelibrary/array.html#arrays>). The "Ix"
+-- <http://www.haskell.org/onlinelibrary/array.html#arrays>). The 'Ix'
-- class contains the methods range, index, and inRange. The 'index' operation
-- maps a bounding pair, which defines the lower and upper bounds of the range,
-- and a subscript, to an integer. The 'range' operation enumerates all
-- Stability : provisional
-- Portability : portable
--
--- C-specific Marshalling support: Handling of C "errno" error codes
+-- C-specific Marshalling support: Handling of C \"errno\" error codes
--
-----------------------------------------------------------------------------
-- Stability : provisional
-- Portability : portable
--
--- The "Ptr" module provides typed pointers to foreign data. It is part
+-- This module provides typed pointers to foreign data. It is part
-- of the Foreign Function Interface (FFI) and will normally be
-- imported via the "Foreign" module.
--
all types for which it is instantiated, which are the standard basic
types of Haskell, the fixed size @Int@ types ('Int8', 'Int16',
'Int32', 'Int64'), the fixed size @Word@ types ('Word8', 'Word16',
-'Word32', 'Word64'), 'StablePtr', all types from "CTypes" and
-"CTypesISO", as well as 'Ptr'.
+'Word32', 'Word64'), 'StablePtr', all types from "Foreign.C.Types",
+as well as 'Ptr'.
Minimal complete definition: 'sizeOf', 'alignment', one of 'peek',
'peekElemOff' and 'peekByteOff', and one of 'poke', 'pokeElemOff' and
-- Unsafe IO operations
{-|
-This is the "back door" into the 'IO' monad, allowing
+This is the \"back door\" into the 'IO' monad, allowing
'IO' computation to be performed at any time. For
this to be safe, the 'IO' computation should be
free of side effects and independent of its environment.
lexP = lift L.lex
paren :: ReadPrec a -> ReadPrec a
--- ^ @(paren p)@ parses "(P0)"
--- where @p@ parses "P0" in precedence context zero
+-- ^ @(paren p)@ parses \"(P0)\"
+-- where @p@ parses \"P0\" in precedence context zero
paren p = do L.Punc "(" <- lexP
x <- reset p
L.Punc ")" <- lexP
return x
parens :: ReadPrec a -> ReadPrec a
--- ^ @(parens p)@ parses "P", "(P0)", "((P0))", etc,
--- where @p@ parses "P" in the current precedence context
--- parses "P0" in precedence context zero
+-- ^ @(parens p)@ parses \"P\", \"(P0)\", \"((P0))\", etc,
+-- where @p@ parses \"P\" in the current precedence context
+-- parses \"P0\" in precedence context zero
parens p = optional
where
optional = p +++ mandatory
choose :: [(String, ReadPrec a)] -> ReadPrec a
-- ^ Parse the specified lexeme and continue as specified.
-- Esp useful for nullary constructors; e.g.
--- @choose [("A", return A), ("B", return B)]@
+-- @choose [(\"A\", return A), (\"B\", return B)]@
choose sps = foldr ((+++) . try_one) pfail sps
where
try_one (s,p) = do { L.Ident s' <- lexP ;
* list of short option characters
-* list of long option strings (without "--")
+* list of long option strings (without \"--\")
* argument descriptor
{- $example
-To hopefully illuminate the role of the different "GetOpt" data
+To hopefully illuminate the role of the different data
structures, here\'s the command-line options for a (very simple)
compiler:
{- $intro
-The "Random" library deals with the common task of pseudo-random
+This library deals with the common task of pseudo-random
number generation. The library makes it possible to generate
repeatable results, by starting with a specified initial random
number generator; or to get different results on each run by using the
-- default mathod
genRange g = (minBound,maxBound)
-{- |The "Random" library provides one instance of 'RandomGen', the abstract data
-type 'StdGen'.
+{- |The "System.Random" library provides one instance of 'RandomGen', the
+abstract data type 'StdGen'.
The result of repeatedly using next should be at least as statistically robust
as the /Minimal Standard Random Number Generator/ described by
-- Stability : provisional
-- Portability : portable
--
--- "ReadP" is a library of parser combinators, originally written by Koen Claessen.
+-- This is a library of parser combinators, originally written by Koen Claessen.
-- It parses all alternatives in parallel, so it never keeps hold of
-- the beginning of the input string, a common source of space leaks with
-- other parsers. The '(+++)' choice combinator is genuinely commutative;
--- it makes no difference which branch is "shorter".
+-- it makes no difference which branch is \"shorter\".
-----------------------------------------------------------------------------