@hackage myers-diff0.2.0.0

Welcome to myers-diff Hackage myers-diff

This is a fast Haskell implementation of the Myers text diff algorithm1. It is heavily inspired by the Python version in this post, and should have the same O(min(len(a), len(b))) space complexity. (By contrast, the Diff package advertises O(ab) space complexity.) The implementation uses unboxed mutable vectors for performance.

This repo also can also build a couple other versions for benchmarking comparison, gated behind flags.

  • -funi_myers will build the version from the uni-util package.
  • -fdiff_myers will use the Diff package.
1

E. Myers (1986). "An O(ND) Difference Algorithm and Its Variations". Algorithmica. 1 (2): 251–266. CiteSeerX 10.1.1.4.6927. doi:10.1007/BF01840446. S2CID 6996809.

  • Installation

  • Dependencies (8)

  • Dependents (0)

  • Package Flags

      diff_myers
       (off by default)

      Include the diff implementation from the Diff package

      uni_myers
       (off by default)

      Use the diff implementation from the "uni-util" package (buggy). This causes LGPL code to be included.