Unix compress was written in C by Joseph M. Orost, James A. Woods et al., and was widely circulated via Usenet. It uses the Lempel-Ziv Welch algorithm and normally produces files with the suffix ".Z".
Compress uses variable length codes. Initially, nine-bit codes are output until they are all used. When this occurs, ten-bit codes are used and so on, until an implementation-dependent maximum is reached.