main函数不会在haskell中使用任何参数

时间:2017-12-16 08:08:35

标签: function haskell functional-programming

您好我想在haskell中定义一个main函数,类似于java中的main函数

main :: String -> IO()
main args = do
            putStrLn args

但是当我尝试运行程序时,这会给我一个错误。

2 个答案:

答案 0 :(得分:6)

Haskell程序的入口点的类型为IO (),而不是String -> IO ()

要获取命令行参数,请使用System.Environment的{​​{3}}。

使用do-notation:

import System.Environment (getArgs)

main :: IO ()
main = do
  args <- getArgs
  print args

(请注意,getArgs代替print,因为args的类型为[String],而不是String。)

答案 1 :(得分:0)

我也觉得这很有用。

let myViewGlobalFrame = myView.convert(myView.frame, to: parentView)