data InterpreterConfig = InterpreterConfig { interpreterEntryPoint :: Name, interpreterPrintWarnings :: Bool, interpreterRunCode :: Maybe Name } main :: String -> [String] -> IO () main = mainWithOptions interpreterConfig options "options... " run where run _ InterpreterConfig _ _ Just prog = Just $ runMinusC prog run [prog] config = Just $ interpret config prog run _ _ = Nothing