<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> <maintainer type="project"> <email>haskell@gentoo.org</email> <name>Gentoo Haskell</name> </maintainer> <longdescription> Common diff algorithm works on list structures: @ diff :: Eq a => [a] -> [a] -> [Edit a] @ This package works on trees. @ treeDiff :: Eq a => Tree a -> Tree a -> Edit (EditTree a) @ This package also provides a way to diff arbitrary ADTs, using @Generics@-derivable helpers. This package differs from <http://hackage.haskell.org/package/gdiff gdiff>, in a two ways: @tree-diff@ doesn't have patch function, and the "edit-script" is a tree itself, which is useful for pretty-printing. @ >>> prettyEditExpr $ ediff (Foo 42 [True, False] "old") (Foo 42 [False, False, True] "new") Foo {fooBool = [-True, +False, False, +True], fooInt = 42, fooString = -"old" +"new"} @ </longdescription> </pkgmetadata>