-----------------------------------------------------------------------------
--- $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
--
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