diffr/patchr implementation in Haskell.