Fix build on OS X
[packages/base.git] / GHC / PArr.hs
1 {-# LANGUAGE Trustworthy #-}
2 {-# LANGUAGE ParallelArrays, MagicHash #-}
3 {-# OPTIONS_GHC -funbox-strict-fields #-}
4 {-# OPTIONS_HADDOCK hide #-}
5
6 -----------------------------------------------------------------------------
7 -- |
8 -- Module : GHC.PArr
9 -- Copyright : (c) 2001-2011 The Data Parallel Haskell team
10 -- License : see libraries/base/LICENSE
11 --
12 -- Maintainer : cvs-ghc@haskell.org
13 -- Stability : internal
14 -- Portability : non-portable (GHC Extensions)
15 --
16 -- BIG UGLY HACK: The desugarer special cases this module. Despite the uses of '-XParallelArrays',
17 -- the desugarer does not load 'Data.Array.Parallel' into its global state. (Hence,
18 -- the present module may not use any other piece of '-XParallelArray' syntax.)
19 --
20 -- This will be cleaned up when we change the internal represention of '[::]' to not
21 -- rely on a wired-in type constructor.
22
23 -- #hide
24 module GHC.PArr where
25
26 import GHC.Base
27
28 -- Representation of parallel arrays
29 --
30 -- Vanilla representation of parallel Haskell based on standard GHC arrays that is used if the
31 -- vectorised is /not/ used.
32 --
33 -- NB: This definition *must* be kept in sync with `TysWiredIn.parrTyCon'!
34 --
35 data [::] e = PArr !Int (Array# e)
36
37 type PArr = [::] -- this synonym is to get access to '[::]' without using the special syntax