peek package:rebase

Read a value from the given memory location. Note that the peek and poke functions might require properly aligned addresses to function correctly. This is architecture dependent; thus, portable code should ensure that when peeking or poking values of some type a, the alignment constraint for a, as given by the function alignment is fulfilled.
Read a value from a memory location given by a base address and offset. The following equality holds:
peekByteOff addr off = peek (addr `plusPtr` off)
Read a value from a memory area regarded as an array of values of the same kind. The first argument specifies the start address of the array and the second the index into the array (the first element of the array has index 0). The following equality holds,
peekElemOff addr idx = IOExts.fixIO $ \result ->
peek (addr `plusPtr` (idx * sizeOf result))
Note that this is only a specification, not necessarily the concrete implementation of the function.
Get the next value from the TBQueue without removing it, retrying if the channel is empty.
Get the next value from the TChan without removing it, retrying if the channel is empty.
Get the next value from the TQueue without removing it, retrying if the channel is empty.
A version of peekTBQueue which does not retry. Instead it returns Nothing if no value is available.
A version of peekTChan which does not retry. Instead it returns Nothing if no value is available.
A version of peekTQueue which does not retry. Instead it returns Nothing if no value is available.