[project @ 2001-02-27 12:36:36 by rrt]
[ghc-hetmet.git] / ghc / compiler / main / Interpreter.hs
index 6496eba..d90ca29 100644 (file)
@@ -1,5 +1,5 @@
 -----------------------------------------------------------------------------
--- $Id: Interpreter.hs,v 1.1 2000/11/07 16:03:38 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,
-    UnlinkedIBinds,
+    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 UnlinkedIBinds = ()
-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