crunch
1. vi. To process, usually in a time-consuming or
complicated way. Connotes an essentially trivial operation that is
nonetheless painful to perform. The pain may be due to the
triviality's being embedded in a loop from 1 to 1,000,000,000.
"FORTRAN programs do mostly number-crunching." 2. vt. To
reduce the size of a file by a complicated scheme that produces bit
configurations completely unrelated to the original data, such as
by a Huffman code. (The file ends up looking something like a
paper document would if somebody crunched the paper into a wad.)
Since such compression usually takes more computations than simpler
methods such as run-length encoding, the term is doubly
appropriate. (This meaning is usually used in the construction
`file crunch(ing)' to distinguish it from number-crunching.)
See compress. 3. n. The character `#'. Used at XEROX
and CMU, among other places. See ASCII. 4. vt. To squeeze
program source into a minimum-size representation that will still
compile or execute. The term came into being specifically for a
famous program on the BBC micro that crunched BASIC source in order
to make it run more quickly (it was a wholly interpretive BASIC, so
the number of characters mattered). Obfuscated C Contest
entries are often crunched; see the first example under that
entry.