**Packages**- base

Identity function.

Haskell identifier, e.g. foo, Baz

A class for monoids (types with an associative binary operation that has an identity) with various general-purpose instances.

Yield True if the given Errno value is valid on the system. This implies that the Eq instance of Errno is also system dependent as it is only defined for valid values of Errno.

The class of monoids (types with an associative binary operation that has an identity). Instances should satisfy the following laws:
* append mempty x =
* append x mempty =
* append x (mappend y z) = mappend (mappend x y)
* concat = foldr mappend memp
The method names refer to the monoid of lists under concatenation, but there are many other instances.
Minimal complete definition: mempty and mappend.
Some types can be viewed as a monoid in more than one way, e.g. both addition and multiplication on numbers. In such cases we often define newtypes and make those instances of Monoid, e.g. Sum and Product.

Returns the ThreadId of the calling thread (GHC only).

A ThreadId is an abstract type representing a handle to a thread. ThreadId is an instance of Eq, Ord and Show, total ordering over ThreadIds. The Show instance lets you convert an arbitrary-valued ThreadId to string form; showing a ThreadId value is occasionally useful when debugging or diagnosing the behaviour of a concurrent program.
*Note*: in GHC, if you have a ThreadId, you essentially have a pointer to the thread itself. This means the thread itself can't be garbage collected until you drop the ThreadId. This misfeature will hopefully be corrected at a later date.
*Note*: Hugs does not provide any operations on other threads; it defines ThreadId as a synonym for ().

Discard the return value of an IO action