Use n-ary sums and products for NDP's generic representation
[ghc-hetmet.git] / compiler / prelude / PrelNames.lhs
index f66b319..9839290 100644 (file)
@@ -217,10 +217,13 @@ genericTyConNames :: [Name]
 genericTyConNames = [crossTyConName, plusTyConName, genUnitTyConName]
 
 ndpNames :: [Name]
-ndpNames = [ parrayTyConName, paClassName, closureTyConName
+ndpNames = [ parrayTyConName, paTyConName, preprTyConName, prTyConName
+           , embedTyConName
+           , closureTyConName
            , mkClosureName, applyClosureName
            , mkClosurePName, applyClosurePName
-           , lengthPAName, replicatePAName ]
+           , lengthPAName, replicatePAName, emptyPAName, packPAName,
+             combinePAName, intEqPAName ]
 \end{code}
 
 
@@ -273,7 +276,10 @@ rANDOM             = mkBaseModule FSLIT("System.Random")
 gLA_EXTS       = mkBaseModule FSLIT("GHC.Exts")
 
 nDP_PARRAY      = mkNDPModule FSLIT("Data.Array.Parallel.Lifted.PArray")
+nDP_REPR        = mkNDPModule FSLIT("Data.Array.Parallel.Lifted.Repr")
+nDP_UTILS       = mkNDPModule FSLIT("Data.Array.Parallel.Lifted.Utils")
 nDP_CLOSURE     = mkNDPModule FSLIT("Data.Array.Parallel.Lifted.Closure")
+nDP_INSTANCES   = mkNDPModule FSLIT("Data.Array.Parallel.Lifted.Instances")
 
 mAIN           = mkMainModule_ mAIN_NAME
 rOOT_MAIN      = mkMainModule FSLIT(":Main") -- Root module for initialisation 
@@ -689,9 +695,16 @@ checkDotnetResName  = varQual  dOTNET FSLIT("checkResult")     checkDotnetResNam
 
 -- NDP stuff
 parrayTyConName     = tcQual   nDP_PARRAY FSLIT("PArray") parrayTyConKey
-paClassName         = clsQual  nDP_PARRAY FSLIT("PA")     paClassKey
-lengthPAName        = methName nDP_PARRAY FSLIT("lengthPA")    lengthPAClassOpKey
-replicatePAName     = methName nDP_PARRAY FSLIT("replicatePA") replicatePAClassOpKey
+paTyConName         = tcQual   nDP_PARRAY FSLIT("PA")     paTyConKey
+preprTyConName      = tcQual   nDP_PARRAY FSLIT("PRepr")  preprTyConKey
+prTyConName         = clsQual  nDP_PARRAY FSLIT("PR")     prTyConKey
+embedTyConName      = tcQual   nDP_REPR   FSLIT("Embed")  embedTyConKey
+lengthPAName        = varQual  nDP_PARRAY FSLIT("lengthPA")    lengthPAIdKey
+replicatePAName     = varQual  nDP_PARRAY FSLIT("replicatePA") replicatePAIdKey
+emptyPAName         = varQual  nDP_PARRAY FSLIT("emptyPA") emptyPAIdKey
+packPAName          = varQual  nDP_PARRAY FSLIT("packPA")  packPAIdKey
+combinePAName       = varQual  nDP_PARRAY FSLIT("combinePA") combinePAIdKey
+intEqPAName         = varQual  nDP_UTILS  FSLIT("intEqPA") intEqPAIdKey
 closureTyConName    = tcQual   nDP_CLOSURE FSLIT(":->")    closureTyConKey
 mkClosureName       = varQual  nDP_CLOSURE FSLIT("mkClosure")  mkClosureIdKey
 applyClosureName    = varQual  nDP_CLOSURE FSLIT("$:")         applyClosureIdKey
@@ -766,8 +779,6 @@ randomClassKey              = mkPreludeClassUnique 31
 randomGenClassKey      = mkPreludeClassUnique 32
 
 isStringClassKey       = mkPreludeClassUnique 33
-
-paClassKey              = mkPreludeClassUnique 34
 \end{code}
 
 %************************************************************************
@@ -880,6 +891,10 @@ stringTyConKey                             = mkPreludeTyConUnique 134
 
 parrayTyConKey                          = mkPreludeTyConUnique 135
 closureTyConKey                         = mkPreludeTyConUnique 136
+paTyConKey                              = mkPreludeTyConUnique 137
+preprTyConKey                           = mkPreludeTyConUnique 138
+embedTyConKey                           = mkPreludeTyConUnique 139
+prTyConKey                              = mkPreludeTyConUnique 140
 
 
 ---------------- Template Haskell -------------------
@@ -1067,8 +1082,12 @@ applyClosureIdKey             = mkPreludeMiscIdUnique 127
 mkClosurePIdKey               = mkPreludeMiscIdUnique 128
 applyClosurePIdKey            = mkPreludeMiscIdUnique 129
 closurePAIdKey                = mkPreludeMiscIdUnique 130
-lengthPAClassOpKey            = mkPreludeMiscIdUnique 131
-replicatePAClassOpKey         = mkPreludeMiscIdUnique 132
+lengthPAIdKey                 = mkPreludeMiscIdUnique 131
+replicatePAIdKey              = mkPreludeMiscIdUnique 132
+emptyPAIdKey                  = mkPreludeMiscIdUnique 133
+packPAIdKey                   = mkPreludeMiscIdUnique 134
+combinePAIdKey                = mkPreludeMiscIdUnique 135
+intEqPAIdKey                  = mkPreludeMiscIdUnique 136
 
 ---------------- Template Haskell -------------------
 --     USES IdUniques 200-399