Mercurial > repo
view interps/rhotor/Main.hs @ 5674:91d4a5b788c9
<tswett> echo \'[11,11,11,15,15,23,12],[5,5,5,3,53,45,16,26,00,20,15,16,22,25,45,91,32,11,15,27,06,01,11,01,47,22,30,13,43,21,11,13,29,61,65,17,19,12,28,17,11,01,23,20,16,20,81,18,32,25,58,22.,1985,10.301350435,1555466973690094680980000956080767,13720946704494913791885940266665466978579582015128512190078...\' > wisdom/code
author | HackBot |
---|---|
date | Wed, 24 Jun 2015 14:47:46 +0000 |
parents | 859f9b4339e6 |
children |
line wrap: on
line source
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"