summaryrefslogtreecommitdiff
path: root/ghc/lib/prelude/Parallel.lhs
diff options
context:
space:
mode:
Diffstat (limited to 'ghc/lib/prelude/Parallel.lhs')
-rw-r--r--ghc/lib/prelude/Parallel.lhs35
1 files changed, 35 insertions, 0 deletions
diff --git a/ghc/lib/prelude/Parallel.lhs b/ghc/lib/prelude/Parallel.lhs
new file mode 100644
index 0000000000..7ee2c7a24e
--- /dev/null
+++ b/ghc/lib/prelude/Parallel.lhs
@@ -0,0 +1,35 @@
+%
+% (c) The GRASP/AQUA Project, Glasgow University, 1995
+%
+\section[Parallel]{Parallel Constructs}
+
+\begin{code}
+module Parallel (par, seq)
+
+where
+
+infixr 0 `par`
+infixr 1 `seq`
+
+par, seq :: a -> b -> b
+
+#if !defined(__CONCURRENT_HASKELL__) && !defined(__PARALLEL_HASKELL__)
+
+par a b = b
+seq a b = b
+
+#else
+
+-- Just names without the ugly underscores
+
+{-# INLINE par #-}
+par a b = _par_ a b
+
+{-# INLINE seq #-}
+seq a b = _seq_ a b
+
+-- Maybe parIO and the like could be added here later.
+
+#endif {- __CONCURRENT_HASKELL__ -}
+\end{code}
+