feature


n. 1. A good property or behavior (as of a program). Whether it was intended or not is immaterial. 2. An intended property or behavior (as of a program). Whether it is good or not is immaterial (but if bad, it is also a misfeature). 3. A surprising property or behavior; in particular, one that is purposely inconsistent because it works better that way --- such an inconsistency is therefore a feature and not a bug. This kind of feature is sometimes called a miswart; see that entry for a classic example. 4. A property or behavior that is gratuitous or unnecessary, though perhaps also impressive or cute. For example, one feature of Common LISP's `format' function is the ability to print numbers in two different Roman-numeral formats (see bells, whistles, and gongs). 5. A property or behavior that was put in to help someone else but that happens to be in your way. 6. A bug that has been documented. To call something a feature sometimes means the author of the program did not consider the particular case, and that the program responded in a way that was unexpected but not strictly incorrect. A standard joke is that a bug can be turned into a feature simply by documenting it (then theoretically no one can complain about it because it's in the manual), or even by simply declaring it to be good. "That's not a bug, that's a feature!" is a common catchphrase. See also feetch feetch, creeping featurism, wart, green lightning.

The relationship among bugs, features, misfeatures, warts, and miswarts might be clarified by the following hypothetical exchange between two hackers on an airliner:

A: "This seat doesn't recline."

B: "That's not a bug, that's a feature. There is an emergency exit door built around the window behind you, and the route has to be kept clear."

A: "Oh. Then it's a misfeature; they should have increased the spacing between rows here."

B: "Yes. But if they'd increased spacing in only one section it would have been a wart --- they would've had to make nonstandard-length ceiling panels to fit over the displaced seats."

A: "A miswart, actually. If they increased spacing throughout they'd lose several rows and a chunk out of the profit margin. So unequal spacing would actually be the Right Thing."

B: "Indeed."

`Undocumented feature' is a common, allegedly humorous euphemism for a bug.