1
Я возникли проблемы с получением на выходе из вспомогательной функции в соответствии с моим вывод функции я использую код ниже:Haskell- Тип соответствия
getSemiDiag :: [[Maybe Player]] -> Int -> Int -> [Maybe Player]
getSemiDiag [] _ _ = []
getSemiDiag (x:xs) start size = if start > (size -1)
then []
else (x !! start) : (getSemiDiag xs (start+1) size)
semiRight :: [[Maybe Player]] -> Int -> Int -> [[Maybe Player]]
semiRight [] _ _ = []
semiRight (x:xs) start size = if start > (size -1)
then []
else (getSemiDiag x start size) : (semiRight xs (start+1) size)
функция semiRight не будет совпадать, несмотря на все мои усилия , Есть предположения?
Я не уверен, что вы хотите достичь, но вы пропускания '[Может игрок]' в 'getSemiDiag' где что ожидает' [[Возможно, игрок]] '. Вы имели в виду, что 'getSemiDiag (x: xs) start size: semiRight xs (start + 1) size'? –
'then []' должно быть, должно быть 'then [[]]' – Wes
спасибо, что это было! – lopezrican304