test :: String -> String -> Int
test' x y n = n
test' "" (y:ys) n = error "error"
test' (x:xs) "" n = error "error"
test' (x:xs) (y:ys) n =
if x == y
then test' xs ys n
else test' xs ys (n+1)
test a b = test' a b 0
Khi tôi biên dịch này, tôi nhận ra điều này:Haskell - khớp mẫu (es) được chồng chéo
Warning: Pattern match(es) are overlapped
Và câu trả lời luôn là "0", mà không phải là những gì tôi mong đợi. Vấn đề với mã và cách khắc phục nó là gì?
Rất hữu ích! Tôi đã học được rất nhiều! Cảm ơn – Ferry