Hamming distance

The Hamming distance H ⁒ ( s 1 , s 2 ) 𝐻 subscript 𝑠 1 subscript 𝑠 2 H(s_{1},s_{2}) between two strings s 1 , s 2 subscript 𝑠 1 subscript 𝑠 2 s_{1},s_{2} of equal length is the number of positions at which the two strings differ.

:{
hamming :: (Eq a) => [a] -> [a] -> Int
hamming as bs = length $ filter (uncurry (/=)) $ zip as bs
:}

hamming "cat" "hat"
hamming "abcd" "adbc"

Examples