Уже довольно давно я получаю эту ошибку в четвертой строке: Синтаксическая ошибка в объявлении (неожиданный `;', возможно, из-за неправильного макета) В следующем фрагменте кода:
import Data.Maybe
leesIngrediënten:: Int->[[Char]]->[Int]->[Maybe [Char]]->[[Char]]->([Int], [Maybe [Char]], [[Char]])
leesIngrediënten 0 _ hoevs eenhs naams = (hoevs, eenhs, naams)
leesIngrediënten n (line:lines) hoevs eenhs naams =
let
(hoev, eenh, naam) = leesLijn line
in
leesIngrediënten (n-1) lines (hoev:hoevs) (eenh:eenhs) (naam:naams)
После поиска в Интернете я нашел, что означает ошибка, но дело в том, что я не вижу своей ошибки. (вероятно, потому что я написал код)
Странно то, что Hugs жалуется там, где GHCi не на что жаловаться.
Заранее спасибо!
in
дальше, чемlet
, а GHC все еще принимает его... - person MathematicalOrchid   schedule 13.01.2015let x=5 in ...
будет отклонена. Обратите внимание, что позицияlet
также не имеет значения (пока она не закрывает открытый блок, находясь слишком слева), важна позиция первого несимвола послеlet
.in
закроет блокlet
в любом месте, где это может быть (если справа, это вызовет ошибку синтаксического анализа, и стандарт IIRC утверждает, что в таком случае вы закрываете блок и повторяете синтаксический анализ - да, это сложно...) - person chi   schedule 13.01.2015