【发布时间】:2011-07-11 06:51:50
【问题描述】:
我已经开始学习 Haskell 并感到不知所措。我现在正在尝试创建一个函数,它要么从标准输入返回一个字符串,要么从文件列表的内容中返回一个字符串。 换句话说,我正在尝试复制 Unix wc 实用程序的行为,该实用程序在没有给出文件时从标准输入获取输入。
我创造了这样的东西:
parseArgs [] = [getContents]
parseArgs fs = mapM readFile fs
但它不能编译,因为在一种情况下我有 [IO String] 而在另一种情况下我有 IO [String]。在所有情况下,我都无法使这种模式匹配返回 IO [String]。请指出正确的方向。
【问题讨论】: