language-nix-1.0: run-nix.hs
-- run-nix.hs
module Main ( main ) where
import Prelude ( fmap, either, (.) )
import Language.Nix ( run )
import System.Environment ( getArgs )
import System.IO ( IO, getContents, hPrint, print, stderr, readFile )
import Control.Monad ( mapM_, (>>=), (>=>) )
main :: IO ()
main = do
args <- getArgs
case args of
[] -> fmap run getContents >>= either (hPrint stderr) print
_ -> mapM_ (readFile >=> (either (hPrint stderr) print) . run) args