【发布时间】:2023-03-31 06:52:02
【问题描述】:
我可以使用 Data.Csv 中的以下代码解析我的 csv 文件:
valuesToList :: Foo -> (Int, Int)
valuesToList (Foo a b) = (a,b)
loadMyData :: IO ()
loadMyData = do
csvData <- BL.readFile "mydata.csv"
case decodeByName csvData of
Left err -> putStrLn err
Right (_, v) -> print $ V.toList $ V.map valuesToList v
当我运行它时,我会在屏幕上得到正确的输出。我的问题是我不清楚如何创建一个纯函数,以便我可以使用列表的内容,如:
let l = loadMyData
其中 l 的类型是 [Int,Int] 我猜是因为我在 IO Monad 中,我正在做一些无可救药的傻事......
【问题讨论】: