diff interps/rhotor/Main.hs @ 996:859f9b4339e6

<Gregor> tar xf egobot.tar.xz
author HackBot
date Sun, 09 Dec 2012 19:30:08 +0000
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/interps/rhotor/Main.hs	Sun Dec 09 19:30:08 2012 +0000
@@ -0,0 +1,27 @@
+module Main ()
+where
+
+import System.IO
+import System.Environment
+import System.Exit
+
+import Misc
+import Parser
+import Evaluator
+
+
+
+main	:: IO ()
+main	= 	(hSetBuffering stdout NoBuffering) >> getArgs >>= \args ->
+			if length args /= 1 then usage
+			else readFile (head args) `catch` (\ _ -> putStr "Error: Couldn't open source file.\n" >> exitWith (ExitFailure 1))
+				>>= \source ->
+					interact (run source)
+					
+run					:: String -> String -> String
+run source input	= nodeTreeToString (evaluate (apply (parse source) (stringToNodeTree input)))
+				
+						
+				
+usage	:: IO ()
+usage	= putStr "Usage: rhotorhi sourcecode.rho\n"
\ No newline at end of file