>>> let hello = diff "Hello, "
>>> appEndo hello "World!" "Hello, World!"
>>> appEndo (hello <> mempty) "World!" "Hello, World!"
>>> appEndo (mempty <> hello) "World!" "Hello, World!"
>>> let world = diff "World" >>> let excl = diff "!"
>>> appEndo (hello <> (world <> excl)) mempty "Hello, World!"
>>> appEndo ((hello <> world) <> excl) mempty "Hello, World!"
diff y (<) 87 diff x (<=) rThis function behaves like the unix diff tool, which gives a 0 exit code if the compared files are identical, or a 1 exit code code otherwise. Like unix diff, if the arguments fail the comparison, a /diff is shown.
>>> let hello = diff "Hello, " >>> appEndo hello "World!" "Hello, World!" >>> appEndo (hello <> mempty) "World!" "Hello, World!" >>> appEndo (mempty <> hello) "World!" "Hello, World!" >>> let world = diff "World" >>> let excl = diff "!" >>> appEndo (hello <> (world <> excl)) mempty "Hello, World!" >>> appEndo ((hello <> world) <> excl) mempty "Hello, World!"
>>> diff sin 0 1.0
>>> cos 0 1.0
>>> diff sin 0 1.0
>>> cos 0 1.0
>>> diff sin 0 1.0
>>> diff sin 0 1.0
>>> diff sin 0 1.0
>>> diff sin 0 1.0
>>> diff sin 0 1.0
>>> cos 0 1.0
>>> diff sin 0 1.0
>>> cos 0 1.0
>>> diff sin 0 1.0
>>> cos 0 1.0