packages feed

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