背景故事:为了更好地理解 Haskell 和函数式编程,我给自己布置了一些作业。我的第一个任务是编写一个程序,可以查看数据集(一组数字、博客中的单词等)、搜索模式或重复、对它们进行分组并报告它们。
听起来很简单。 :)
问题:我希望程序首先从文本文件中的数据创建一个列表变量。我熟悉 readFile 函数,但我想知道是否有更优雅的方式来输入数据。
例如,我想允许用户在命令行中键入类似的内容来加载程序和数据集。
./haskellprogram textfile.txt
是否有一个函数可以实现这一点?
最佳答案
import System.Environment
main :: IO ()
main = do
args <- getArgs
-- args is a list of arguments
if null args
then putStrLn "usage: ./haskellprogram textfile.txt"
else do contents <- readFile $ head args
putStrLn $ doSomething contents
doSomething :: String -> String
doSomething = reverse
这应该足以让您开始。现在用更有值(value)的东西替换 reverse
:)
关于shell - 使用 Haskell 输入数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8747780/