Content deleted Content added
Martinwguy (talk | contribs) m get wikilink name right |
Martinwguy (talk | contribs) Add examples and history |
||
Line 1:
In [[computer programming]], '''oxbow code''' refers to fragments of program code that were once needed but which are now never used. Such code is typically formed when a program is modified, either when an item is superceded with a newer version but the old version is not removed, or when an item is removed or replaced, but the item's supporting code is not removed.
Such code is normally removed unless sufficiently amusing or educational.
Similarly, variables and data structures can be left around after the last code that used them has gone, though these are more commonly called [[unused variables]] or [[unreferenced variable]]s.
The term is taken by analogy with [[oxbow lake]]s which are formed in nature when
a bend in a river becomes so pronounced that the water breaks through
from before the bend to after it, making the river straight again.
When the sides of the new course silt up a curved lake is left,
disconnected from the main stream. As in nature, so in code :)
== History ==
This article's author first heard the term from David C. Wood at the University of Kent at Canterbury
in the mid 1980s.
== Examples ==
(from
[[http://cvs.savannah.gnu.org/viewcvs/gnash/server/asobj/Global.cpp?rev=1.46&root=gnash&view=markup gnash/server/asobj/Global.cpp 1.46]])
<code>
static void
as_global_escape(const fn_call& fn)
{
// List of chars we must convert to escape sequences
const string hexdigits = "0123456789ABCDEF";
string input = fn.arg(0).to_string();
URL::encode(input);
fn.result->set_string(input.c_str());
}
</code>
In this, "hexdigits" is oxbow code (or oxbow data).
|