我写了一个Haskell程序并得到了一个我不明白的编译错误.
该计划应:
StringString入NestedList数据类型NestedList成一个ListList不幸的是,由于类型模糊,它不会编译.
Haskell代码:
{-
Run like this:
$ ./prog List [Elem 1, List [Elem 2, List [Elem 3, Elem 4], Elem 5]]
Output: [1,2,3,4,5]
-}
import System.Environment
import Data.List
data NestedList a = Elem a | List [NestedList a]
deriving (Read)
main = do
args <- getArgs
print . flatten . read $ intercalate " " args
flatten :: NestedList a -> [a]
flatten (Elem …Run Code Online (Sandbox Code Playgroud)