Haskellでプログラミングをしようとしています。ファイルを読み取ってから、 line 関数を使用してファイル内のすべての行をリストに入れようとしています。部分的なコードは次のとおりです。
file = "muh.rtr"
readTrack :: String -> Track
readTrack file =
do let defFile = readFile file
let fileLines = lines defFile
ただし、次のエラーが発生し続けます。
Parser.hs:22:39:
Couldn't match expected type `String' with actual type `IO String'
In the first argument of `lines', namely `defFile'
In the expression: lines defFile
In an equation for `fileLines': fileLines = lines defFile
どこかで答えを見つけたいと思って何時間もインターネットを検索してきましたが、今のところそれほど幸運ではありません.