[project @ 2002-05-01 17:56:52 by sof]
[ghc-hetmet.git] / ghc / compiler / main / Interpreter.hs
index 9a5c242..d90ca29 100644 (file)
@@ -1,5 +1,5 @@
 -----------------------------------------------------------------------------
--- $Id: Interpreter.hs,v 1.2 2000/11/08 13:51:58 simonmar Exp $
+-- $Id: Interpreter.hs,v 1.11 2000/12/19 12:36:12 sewardj Exp $
 --
 -- Interpreter subsystem wrapper
 --
@@ -9,30 +9,50 @@
 
 module Interpreter (
 #ifdef GHCI
-       module StgInterp,
-       module InterpSyn,
+       module ByteCodeGen,
        module Linker
 #else
-    ClosureEnv, ItblEnv,
-    linkIModules,
-    stgToInterpSyn,
+    ClosureEnv, emptyClosureEnv, 
+    ItblEnv, emptyItblEnv,
+    byteCodeGen,
     HValue,
-    UnlinkedIBind,
+    UnlinkedBCO, UnlinkedBCOExpr,
     loadObjs, resolveObjs,
 #endif
   ) where
 
 #ifdef GHCI
-import StgInterp
-import InterpSyn
+
+-- ------------------------------------------------------------
+-- YES!  We have an interpreter
+-- ------------------------------------------------------------
+
+import ByteCodeGen
 import Linker
+
 #else
+
+import Outputable
+
+-- ------------------------------------------------------------
+-- NO!  No interpreter; generate stubs for all the bits
+-- ------------------------------------------------------------
+
 type ClosureEnv = ()
+emptyClosureEnv = ()
+
 type ItblEnv = ()
-linkIModules = error "linkIModules"
-stgToInterpSyn = error "linkIModules"
-type HValue = ()
-type UnlinkedIBind = ()
-loadObjs = error "loadObjs"
-resolveObjs = error "loadObjs"
+emptyItblEnv = ()
+
+type HValue          = ()
+data UnlinkedBCO     = UnlinkedBCO
+data UnlinkedBCOExpr = UnlinkedBCOExpr
+
+instance Outputable UnlinkedBCO where
+  ppr x = text "Can't output UnlinkedBCO"
+
+byteCodeGen    = error "byteCodeGen"
+loadObjs       = error "loadObjs"
+resolveObjs    = error "resolveObjs"
+interactiveUI  = error "interactiveUI"
 #endif