[project @ 2003-09-04 11:08:46 by simonmar]
[ghc-hetmet.git] / ghc / compiler / main / Interpreter.hs
index 6496eba..cadec90 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.12 2002/09/13 15:02:35 simonpj Exp $
 --
 -- Interpreter subsystem wrapper
 --
@@ -9,30 +9,44 @@
 
 module Interpreter (
 #ifdef GHCI
-       module StgInterp,
-       module InterpSyn,
+       module ByteCodeGen,
        module Linker
 #else
-    ClosureEnv, ItblEnv,
-    linkIModules,
-    stgToInterpSyn,
-    HValue,
-    UnlinkedIBinds,
-    loadObjs, resolveObjs,
+
 #endif
   ) where
 
 #ifdef GHCI
-import StgInterp
-import InterpSyn
+
+-- ------------------------------------------------------------
+-- YES!  We have an interpreter
+-- ------------------------------------------------------------
+
+import ByteCodeGen
 import Linker
+
 #else
-type ClosureEnv = ()
+
+import Outputable
+
+-- ------------------------------------------------------------
+-- NO!  No interpreter; generate stubs for all the bits
+-- ------------------------------------------------------------
+
+extendLinkEnv xs = return ()
+
 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