

Proof also originated on Unix and, like diff, produced line-by-line changes and even used angle-brackets (">" and "<") for presenting line insertions and deletions in the program's output. McIlroy's work was preceded and influenced by Steve Johnson's comparison program on GECOS and Mike Lesk's proof program. The algorithm this paper described became known as the Hunt–Szymanski algorithm. Hunt, who developed an initial prototype of diff. This research was published in a 1976 paper co-written with James W. The first released version shipped with the 5th Edition of Unix in 1974, and was written by Douglas McIlroy, and James Hunt. ĭiff was developed in the early 1970s on the Unix operating system, which was emerging from Bell Labs in Murray Hill, New Jersey. The POSIX standard specifies the behavior of the "diff" and "patch" utilities and their file formats. The output of similar file comparison utilities is also called a "diff" like the use of the word " grep" for describing the act of searching, the word diff became a generic term for calculating data difference and the results thereof. The output is called a "diff", or a patch, since the output can be applied with the Unix program patch.

Modern implementations also support binary files. Typically, diff is used to show the changes between two versions of the same file. The utility displays the changes in one of several standard formats, such that both humans or computers can parse the changes, and use them for patching. Unlike edit distance notions used for other purposes, diff is line-oriented rather than character-oriented, but it is like Levenshtein distance in that it tries to determine the smallest set of deletions and insertions to create one file from the other. In computing, the utility diff is a data comparison tool that computes and displays the differences between the contents of files. Various open-source and commercial developers For the general topic of file comparison, see File comparison. This article is about the utility program.
