-- | Simple textual diffing of JavaScript programs for inspecting test -- failures module Language.ECMAScript3.SourceDiff where import Data.Algorithm.Diff import Data.Algorithm.DiffOutput import Language.ECMAScript3.Syntax import Language.ECMAScript3.PrettyPrint import Data.List (intersperse, intercalate) jsDiff :: JavaScript a -> JavaScript a -> String jsDiff js1 js2 = let plines = lines . show . prettyPrint diff = getGroupedDiff (plines js1) (plines js2) in ppDiff diff