summaryrefslogtreecommitdiff
path: root/src/Transfer/InterpreterAPI.hs
diff options
context:
space:
mode:
authoraarne <aarne@cs.chalmers.se>2008-06-25 16:43:48 +0000
committeraarne <aarne@cs.chalmers.se>2008-06-25 16:43:48 +0000
commitb96b36f43de3e2f8b58d5f539daa6f6d47f25870 (patch)
tree0992334be13cec6538a1dea22fbbf26ad6bdf224 /src/Transfer/InterpreterAPI.hs
parentfe367412e0aeb4ad5c02de68e6eca382e0f96984 (diff)
removed src for 2.9
Diffstat (limited to 'src/Transfer/InterpreterAPI.hs')
-rw-r--r--src/Transfer/InterpreterAPI.hs39
1 files changed, 0 insertions, 39 deletions
diff --git a/src/Transfer/InterpreterAPI.hs b/src/Transfer/InterpreterAPI.hs
deleted file mode 100644
index 2fe04e8f3..000000000
--- a/src/Transfer/InterpreterAPI.hs
+++ /dev/null
@@ -1,39 +0,0 @@
-module Transfer.InterpreterAPI (Env, builtin,
- load, loadFile,
- evaluateString, evaluateExp
- ) where
-
-import Transfer.Core.Abs
-import Transfer.Core.Lex
-import Transfer.Core.Par
-import Transfer.Core.Print
-import Transfer.Interpreter
-import Transfer.ErrM
-
--- | Read a transfer module in core format from a string.
-load :: Monad m =>
- String -- ^ Input source name, for error messages.
- -> String -- ^ Module contents.
- -> m Env
-load n s = case pModule (myLexer s) of
- Bad e -> fail $ "Parse error in " ++ n ++ ": " ++ e
- Ok m -> return $ addModuleEnv builtin m
-
--- | Read a transfer module in core format from a file.
--- Fails in the IO monad if there is a problem loading the file.
-loadFile :: FilePath -> IO Env
-loadFile f = readFile f >>= load f
-
--- | Read a transfer expression from a string and evaluate it.
--- Returns the result as a string.
-evaluateString :: Monad m => Env -> String -> m String
-evaluateString env s =
- case pExp (myLexer s) of
- Bad e -> fail $ "Parse error: " ++ e
- Ok e -> do
- let v = eval env e
- return $ printValue v
-
--- | Evaluate an expression in the given environment.
-evaluateExp :: Env -> Exp -> Exp
-evaluateExp env exp = valueToExp $ eval env exp