我試圖使用遞歸和高階函數做一些事情到列表的第一個元素,然後向列表中的所有其他元素,因此,例如增加3到第1 ,第3,第5 ..等非詳盡模式錯誤
我遇到的問題是,它給了我non-exhaustive pattern
錯誤。任何幫助,將不勝感激。以下是我迄今爲止:
applyToEveryOther :: (a -> b) -> [a] -> [b]
applyToEveryOther _ [] = []
applyToEveryOther f (x:y:xs) = f x : applyToEveryOther f xs
,這些都是我所嘗試,但不利於一些額外的線路:
applyToEveryOther _ [x] = f x
applyToEveryOther f [x] = f x
的可能的複製[哈斯克爾:雙列表中的每第二個元素(https://stackoverflow.com/questions/17383169/haskell-double-every-2nd-element-in-list) – cdk