<sect1 id="primitives">
<title>Unboxed types and primitive operations</title>
- <indexterm><primary>GHC.Prim module</primary></indexterm>
+ <indexterm><primary>GHC.Exts module</primary></indexterm>
<para>This chapter defines all the types which are primitive in
Glasgow Haskell, and the operations provided for them. You bring
- them into scope by importing module <literal>GHC.Prim</literal>.</para>
+ them into scope by importing module <literal>GHC.Exts</literal>.</para>
<para>Note: while you really can use this stuff to write fast code,
we generally find it a lot less painful, and more satisfying in the
</title>
<para>
-Unboxed tuples aren't really exported by <literal>GHC.Prim</literal>,
+Unboxed tuples aren't really exported by <literal>GHC.Exts</literal>,
they're available by default with <option>-fglasgow-exts</option>. An
unboxed tuple looks like this:
</para>
double2Int# :: Double# -> Int#
int2Double# :: Int# -> Double#
-{plus,minux,times,divide}Float# :: Float# -> Float# -> Float#
+{plus,minus,times,divide}Float# :: Float# -> Float# -> Float#
{gt,ge,eq,ne,lt,le}Float# :: Float# -> Float# -> Bool
negateFloat# :: Float# -> Float#
float2Int# :: Float# -> Int#
</para>
<para>
-Please see <xref LinkEnd="sec-stable-pointers"> for more details.
+Please see the module <literal>Foreign.StablePtr</literal> in the
+library documentation for more details.
</para>
</listitem>
</varlistentry>
</para>
<para>
-Please see <xref LinkEnd="sec-ForeignObj"> for more details.
+Please see module <literal>Foreign.ForeignPtr</literal> in the library
+documentatation for more details.
</para>
</listitem>
</varlistentry>