From: eric@snark.thyrsus.com (Eric S. Raymond)
Newsgroups: alt.folklore.computers
Subject: Jargon File Update --- changes since 2.9.6
Date: 15 Apr 92 16:30:22 GMT

This is an automatically generated difference report including new, changed
and deleted entries from the _The_New_Hacker's_Dictionary_ (Jargon File
release 2.9.6) up to the 2.9.[789] version.  Trivial tweaks such as typo fixes,
and additions to the cross-reference structure that don't change the
actual content of the entry, have been omitted.

This report was generated Wed Apr 15 12:16:39 EDT 1992

********************** New entries ****************************

:AIDX: n. /aydkz/ n. Derogatory term for IBM's perverted version
   of UNIX, AIX, especially for the AIX 3.? used in the IBM RS/6000
   series.  A victim of the dreaded "hybridism" disease, this
   attempt to combine the two main currents of the UNIX stream
   ({BSD} and {USG UNIX}) became a {monstrosity} to haunt
   system administrators' dreams.  For example, if new accounts are
   created while many users are logged on, the load average jumps
   quickly over 20 due to silly implementation of the user databases.
   For a quite similar disease, compare {HP-SUX}.

:annoybot: /*-noy-bot/ [IRC] n. See {robot}.

:barfmail: n. Multiple {bounce message}s accumulating to the
   level of serious annoyance, or worse.  The sort of thing that
   happens when an inter-network mail gateway goes down or
   wonky.

:barney: n. In Commonwealth hackish, `barney' is to {fred}
   (sense #1) as {bar} is to {foo}.  That is, people who
   commonly use `fred' as their first metasyntactic variable will
   often use `barney' second.  The reference is, of course, to Fred
   Flintstone and Barney Rubble in old Hanna-Barbera cartoons.

:blargh: /blarg/ [MIT] n. The opposite of {ping}, sense 5; an
   exclamation indicating that one has absorbed or is emitting a
   quantum of unhappiness.  Less common than {ping}.

:BLOB: [acronym, Binary Large OBject] n. Used by database people
   for any random large block of bits which needs to be stored in a
   database, such as a picture or sound file.  The essential point
   about a BLOB is that it's an object you can't interpret within the
   database itself.

:blurgle: /bl'gl/ [Great Britain] n. Spoken {metasyntactic variable},
   to indicate some text which is obvious from context, or which is
   already known. If several words are to be replaced, blurgle may
   well be doubled or trebled. "To look for something in several
   files use `grep string blurgle blurgle'."  In each case, "blurgle
   blurgle" would be understood to be replaced by the file you
   wished to search.  Compare {mumble}, sense 6.

:BOF: /B-O-F/ or /bof/ n. Abbreviation for the phrase "Birds
   Of a Feather" (flocking together), an informal discussion group
   and/or bull session scheduled on a conference program.  It is not
   clear where or when this term originated, but the term is
   associated with the USENIX conferences for UNIX techies and was
   already established there by 1984.

:brain fart: n. The actual result of a {braino}, as opposed to
   the mental glitch which is the braino itself.  E.g. typing
   `dir' on a UNIX box after a session with DOS.

:break-even point: n. in the process of implementing a new computer
   language, the point at which the language is sufficiently effective
   that one can implement the language in itself.  That is, for a new
   language called, hypothetically, FOOGOL, one has reached break-even
   when one can write a demonstration compiler for FOOGOL in FOOGOL,
   discard the original implementation language, and thereafter use
   older versions of FOOGOL to develop newer ones.  This is an
   important milestone; see {MFTL}.

:C Programmer's Disease: n. The tendency of the undisciplined C
   programmer to set arbitrary but supposedly generous static limits
   on table sizes (defined, if you're lucky, by constants in header
   files) rather than taking the trouble to do proper dynamic storage
   allocation.  If an application user later needs to put 68 elements
   into a table of size 50, the afflicted programmer reasons that he
   can easily reset the table size to 68 (or even as much as 70, to
   allow for future expansion), and recompile.  This gives the
   programmer the comfortable feeling of having done his bit to
   satisfy the user's (unreasonable) demands, and often affords the
   user multiple opportunities to explore the marvelous consequences
   of {fandango on core}.  In severe cases of the disease, the
   programmer cannot comprehend why each fix of this kind seems only
   to further disgruntle the user.

:candygrammar: n. A programming-language grammar that is mostly
   {syntactic sugar}; the term is also a play on `candygram'.
   {COBOL}, Apple's Hypertalk language, and a lot of the so-called
   `4GL' database languages are like this.  The usual intent of such
   designs is that they be as English-like as possible, on the theory
   that they will then be easier for unskilled people to program.
   This intention comes to grief on the reality that syntax isn't what
   makes programming hard; it's the mental effort and organization
   required to specify an algorithm precisely that costs.  Thus the
   invariable result is that `candygrammar' languages are just as
   difficult to program in as terser ones, and far more painful for
   the experienced hacker.

:cd tilde: /see-dee til-d*/ vi.  To go home.  From the UNIX
   C-shell and Korn-shell command `cd ~', which takes one
   `$HOME'.  By extension, may be used with other arguments;
   thus, over an electronic chat link, "cd  coffee" would mean "I'm
   going to the coffee machine."

:channel: [IRC] n.  The basic unit of discussion on {IRC}.  Once
   one joins a channel, everything one types is read by others on that
   channel.  Channels can either be named with numbers or with strings
   that begin with a `+' or `#' sign, and can have topic descriptions
   (which are generally irrelevant to the actual subject of
   discussion).  Some notable channels are `+initgame',
   `+hottub', and `+report'.  At times of international
   crisis, `+report' has hundreds of members, some of whom take
   turns listening to various news services and summarizing the news,
   or in some cases, giving first-hand accounts of the action (e.g.,
   Scud missile attacks in Tel Aviv during the Gulf War in 1991).
   
:channel hopping: [IRC, GEnie] n.  To rapidly switch channels on
   {IRC}, or GEnie chat board, just as a social butterfly might hop
   from one group to another at a party.  This may derive from the TV
   watcher's idiom `channel surfing'.

:channel op: /chan'l op/ [IRC] n. Someone who is endowed with
   privileges on a particular {IRC} channel; commonly abbreviated
   `chanop' or `CHOP'.  These privileges include the right to
   {kick} users, to change various status bits, and to make others
   into CHOPs.
   
:chanop: /chan-op/ [IRC] n. See {channel op}.

:CHOP: [IRC] n. See {channel op}.

:command key: [Mac users] n. Syn. {feature key}.

:confuser: n. Common soundalike slang for `computer'.  Usually
   encountered in compounds such as `confuser room', `personal
   confuser', `confuser guru'.  Usage: silly.

:cooked mode: [UNIX] n. The normal character-input mode, with
   interrupts enabled and with erase, kill and other special-character
   interpretations done directly by the tty driver.  Oppose {raw
   mode}, {rare mode}.  This is techspeak under UNIX but jargon
   elsewhere; other operating systems often have similar mode
   distinctions, and the raw/rare/cooked way of describing them has
   spread widely along with the C language and other UNIX exports.
   Most generally, `cooked mode' may refer to any mode of a
   system that does extensive preprocessing before presenting data to
   a program.

:copious free time: [Apple; orig. fr. the intro to Tom Lehrer's
   song "It Makes A Fellow Proud To Be A Soldier"] n. 1. [used
   ironically to indicate the speaker's lack of the quantity in
   question] A mythical schedule slot for accomplishing tasks held to
   be unlikely or impossible.  Sometimes used to indicate that the
   speaker is interested in accomplishing the task, but believes that
   the opportunity will not arise.  "I'll add the automatic layout
   stuff in my copious free time."  2. [Archly] Time reserved for
   bogus or otherwise idiotic tasks, such as implementation of
   {chrome}, or the stroking of {suit}s.  "I'll get back to him
   on that feature in my copious free time."

:cracking: n. The act of breaking into a computer system; what a
   {cracker} does.  Contrary to widespread myth, this does not
   usually involve some mysterious leap of hackerly brilliance, but
   rather persistence and the dogged repetition of a handful of fairly
   well-known tricks that exploit common weaknesses in the security of
   target systems.  Accordingly, most crackers are only mediocre
   hackers.

:dark-side hacker: n. A criminal or malicious hacker; a
   {cracker}.  From George Lucas's Darth Vader, "seduced by the
   dark side of the Force".  The implication that hackers form a
   sort of elite of technological Jedi Knights is intended.  Oppose
   {samurai}.

:dead: adj. 1. Non-functional; {down}; {crash}ed.  Especially
   used of hardware.  2. At XEROX PARC, software that is working but
   not undergoing continued development and support.

:death code: n. A routine whose job is to set everything in the
   computer --- registers, memory, flags, everything --- to zero,
   including that portion of memory where it is running (its last act
   is to stomp on its own "store zero" instruction).  Death code
   isn't very useful, but writing it is an interesting hacking
   challenge on architectures where the instruction set makes it
   possible, such as the PDP-8 (it's also been done on the DG Nova).
   Death code is much less common, and more anti-social, on modern
   multi-user machines.  It was very impressive on earlier hardware
   that provided front panel switches and displays to show register
   and memory contents, esp.  when these were used to prod the corpse
   to see why it died.

:die: v. Syn. {crash}.  Unlike {crash}, which is used
   primarily of hardware, this verb is used of both hardware and
   software.  See also {go flatline}

:die horribly: v. The sofware equivalent of {crash and burn},
   and the preferred emphatic form of {die}.  "The converter
   choked on an FF in its input and died horribly".

:dirtball: [XEROX PARC] n.  A small, perhaps struggling outsider;
   not in the major or even the minor leagues.  For example, "Xerox
   is not a dirtball company".

   [Outsiders often observe in the PARC culture an institutional
   arrogance which usage of this term exemplifies.  The brilliance and
   scope of PARC's contributions to computer science have been such
   that this superior attitude is not much resented.  --- ESR]

:Duff's device: n. The most dramatic use yet seen of {fall
   through} in C, invented by Tom Duff when he was at Lucasfilm.
   Trying to {bum} all the instructions he could out of an inner
   loop that copied data serially onto an output port, he decided to
   {unroll} it.  He then realized that the unrolled version could
   be implemented by *interlacing* the structures of a switch and
   a loop:

        register n = (count + 7) / 8;       /* count > 0 assumed */

        switch (count % 8)
        {
        case 0: do {    *to = *from++;
        case 7:         *to = *from++;
        case 6:         *to = *from++;
        case 5:         *to = *from++;
        case 4:         *to = *from++;
        case 3:         *to = *from++;
        case 2:         *to = *from++;
        case 1:         *to = *from++;
             } while (--n > 0);
        }

   Having verified that the device is valid portable C, Duff announced
   it.  C's default {fall through} in case statements has long been
   its most controversial single feature; Duff observed that "This
   code forms some sort of argument in that debate, but I'm not sure
   whether it's for or against."

:dumpster diving: /dump'-ster di:ving/ n. The practice of sifting
   refuse from an office or technical installation to extract
   confidential data, especially security-compromising information
   (`dumpster' is an Americanism for what is elsewhere called a
   `skip').  Back in AT&T's monopoly days, before paper shredders
   became common office equipment, phone phreaks (see {phreaking})
   used to organize regular dumpster runs against phone company plants
   and offices.  Discarded and damaged copies of AT&T internal manuals
   taught them much.  The technique is still rumored to be a favorite
   of crackers operating against careless targets.

:error 33: [XEROX PARC] n. 1. Predicating one research effort upon
   the success of another.  2. Allowing your own research effort to be
   placed on the critical path of some other project (be it a research
   effort or not).

:fat electrons: n. Old-time hacker David Cargill's theory on the
   causation of computer glitches.  Your typical electric utility
   draws its line current out of the big generators with a pair of
   coil taps located near the top of the dynamo.  When the normal tap
   brushes get dirty, they take them off line to clean up, and use
   special auxilliary taps on the *bottom* of the coil.  Now,
   this is a problem, because when they do that they get not ordinary
   or `thin' electrons, but the fat'n'sloppy electrons that are
   heavier and so settle to the bottom of the generator.  These flow
   down ordinary wires just fine, but when they have to turn a sharp
   corner (as in an integrated-circuit via) they're apt to get stuck.
   This is what causes computer glitches.  [Fascinating.  Obviously,
   fat electrons must gain mass by {bogon} absorption --- ESR]
   Compare {bogon}, {magic smoke}.

:feature key: n. The Macintosh key with the cloverleaf graphic on
   its keytop; sometimes referred to as `flower', `pretzel',
   `clover', `propeller', `beanie' (an apparent reference to the
   major feature of a propeller beanie), {splat}, or the `command
   key'.  The Mac's equivalent of an {ALT} key.  The proliferation
   of terms for this creature may illustrate one subtle peril of
   iconic interfaces.

   Many people have been mystified by the cloverleaf-like symbol that
   appears on the feature key.  Its oldest name is `cross of St.
   Hannes', but it occurs in pre-Christian Viking art as a decorative
   motif.  Throughout Scandinavia today the road agencies use it to
   mark sites of historical interest.  Many of these are old churches;
   hence, the Swedish idiom for the symbol is `kyrka', cognate to
   English `church' and Scots-dialect `kirk' but pronounced
   /shir'k*/ in modern Swedish.  This is in fact where Apple got the
   symbol; they give the translation "interesting feature"!

:finn: [IRC] v.  To pull rank on somebody based on the amount of
   time one has spent on {IRC}.  The term derives from the fact
   that IRC was originally written in Finland in 1987.
   
:firehose syndrome: n. In mainstream folklore it is observed that
   trying to drink from a firehose can be a good way to rip your lips
   off.  On computer networks, the absence or failure of flow control
   mechanisms can lead to situations in which the sending system
   sprays a massive flood of packets at an unfortunate receiving
   system; more than it can handle.  This is sometimes called
   `firehose syndrome'.  Compare {overrun}, {buffer overflow}.

:flood: [IRC] v.  To dump large amounts of text onto an {IRC}
   channel.  This is especially rude when the text is uninteresting
   and the other users are trying to carry on a serious conversation.
   
:FM: n. *Not* `Frequency Modulation'; abbreviation for `Fucking Manual',
   the back-formation of {RTFM}. Used to refer to the manual itself
   in the {RTFM}. "Have you seen the Networking FM lately?"

:fontology: [XEROX PARC] n. The body of knowledge dealing with the
   construction and use of new fonts (e.g. for window systems and
   typesetting software).  It has been said that fontology
   recapitulates file-ogeny.

   [Unfortunately, this reference to the embryological dictum that
   "Ontogeny recapitulates phylogeny" is not merely a joke.  On the
   Macintosh, for example, System 7 has to go through contortions to
   compensate for an earlier design error that created a whole
   different set of abstractions for fonts parallel to `files' and
   `folders' --- ESR]

:for values of: [MIT] A common rhetorical maneuver at MIT is to use
   any of the canonical {random numbers} as placeholders for
   variables.  "The max function takes 42 arguments, for arbitrary
   values of 42." "There are 69 ways to leave your lover, for
   69 = 50."  This is especially likely when the speaker has uttered
   a random number and realizes that it was not recognized as such,
   but even `non-random' numbers are occasionally used in this
   fashion.  A related joke is that pi equals 3 --- for
   small values of pi and large values of 3.

   Historical note: this usage probably derives from the programming
   language MAD (Michigan Algorithm Decoder), an Algol-like language
   that was the most common choice among mainstream (non-hacker) users
   at MIT in the mid-60s.  It had a control structure FOR VALUES OF X
   = 3, 7, 99 DO ... that would repeat the indicated instructions for
   each value in the list (unlike the usual FOR that only works for
   arithmetic sequences of values).  MAD is long extinct, but similar
   for-constructs still flourish (e.g. in UNIX's shell languages).

:fork bomb: [UNIX] n.  A particular species of {wabbit} that can
   be written in about 10 lines of C or shell on any UNIX system, or
   occasionally created by an egregious coding bug.  A fork bomb
   process `explodes' by recursively spawning copies of itself
   (using the UNIX system call `fork(2)').  Eventually it eats
   all the process table entries and effectively wedges the system.
   Fortunately, fork bombs are relatively easy to spot and kill, so
   creating one deliberately seldom accomplishes more than to bring
   the just wrath of the gods down upon the perpetrator.  See also
   {logic bomb}.

:frogging: [University of Waterloo] v. 1. Partial corruption of a text
   file or input stream by some bug or consistent glitch, as opposed
   to random events like line noise or media failures.  Might occur,
   for example, if one bit of each incoming character on a tty were
   stuck, so that some characters were correct and others were not.
   See {terminak} for a historical example.  2. By extension,
   accidental display of text in a mode where the output device emits
   special symbols or mnemonics rather than conventional ASCII.  Often
   happens, for example, when using a terminal or comm program on a
   device like an IBM PC with a special `high-half' character set and
   with the bit-parity assumption wrong.  A hacker sufficiently
   familiar with ASCII bit patterns might be able to read the display
   anyway.

:fum: [XEROX PARC] n. At PARC, often the third of the standard
   {metasyntactic variable}s (after {foo} and {bar}.  Competes
   with {baz}, which is more common outside PARC.

:Great Worm, the: n. The 1988 Internet {worm} perpetrated by
   {RTM}.  This is a play on Tolkien (compare {elvish},
   {Elder Days}).  In the fantasy history of his Middle Earth
   books, there were dragons powerful enough to lay waste to entire
   regions; two of these (Scatha and Glaurung) were known as "the
   Great Worms".  This usage expresses the connotation that the RTM
   hack was a sort of devastating watershed event in hackish history;
   certainly it did more to make non-hackers nervous about the
   Internet than anything before or since.

:guru meditation: n. Amiga equivalent of `panic' in UNIX
   (sometimes just called a `guru' or `guru event').  When the
   system crashes, a cryptic message "GURU MEDITATION
   #XXXXXXXX.YYYYYYYY" appears, indicating what the problem was.  An
   Amiga guru can figure things out from the numbers.  Generally a
   {guru} event must be followed by a {Vulcan nerve pinch}.

   This term is (no surprise) an in-joke from the earliest days of the
   Amiga.  There used to be a device called a `Joyboard' which was
   basically a plastic board built onto on a joystick-like device; it
   was sold with a skiing game cartridge for the Atari game machine.
   It is said that whenever the prototype OS crashed, the system
   programmer responsible would calm down by concentrating on a
   solution while sitting cross-legged on a Joyboard trying to keep
   the board in balance.  This position resembled that of a
   meditating guru.  Sadly, the joke was removed in AmigaOS 2.0.

:gweep: /gweep/ [WPI] 1. v. To {hack}, usually at night.  At
   WPI, from 1977 onwards, this often indicated that the speaker could
   be found at the College Computing Center punching cards or crashing
   the {PDP-10} or, later, the DEC-20; the term has survived the
   demise of those technologies, however, and is still live in late
   1991.  "I'm going to go gweep for a while. See you in the
   morning" "I gweep from 8pm till 3am during the week."  2. n. One
   who habitually gweeps in sense 1; a {hacker}.  "He's a
   hard-core gweep, mumbles code in his sleep."

:hacker ethic, the: n. Usually refers to one of two related
   normative ethical principles widely (but by no means universally)
   accepted among hackers.  One is the belief that information-sharing
   is a powerful positive good, and that it is an ethical duty of
   hackers to share their expertise by writing free software and
   facilitating access to information and to computing resources
   wherever possible.  The other is the belief that system-cracking
   for fun and exploration is ethically OK as long as the cracker
   commits no theft, vandalism, or breach of confidentiality.

   Most hackers subscribe to the first version of the hacker ethic,
   and many act on it by writing and giving away free software; a few
   go further and assert that *all* information should be free
   and *any* proprietary control of it is bad (this is the
   philosophy behind the {GNU} project).  The second version of the
   hacker ethic is more controversial (some people consider the act of
   cracking itself to be unethical, like breaking and entering), but
   at least moderates the behavior of people who see themselves as
   `benign' crackers (see also {samurai}).  On this view, it is
   one of the highest forms of hackerly courtesy to (a) break into a
   system, and then (b) explain to the sysop, preferably by email from
   a {superuser} account, exactly how it was done and how the hole
   can be plugged.

   The most reliable manifestation of either version of the hacker
   ethic is that almost all hackers are actively willing to share
   technical tricks, software, and (where possible) computing
   resources with other hackers.  Huge cooperative networks such as
   {USENET}, {Fidonet} and Internet (see {Internet address})
   can function without central control because of this trait; they
   both rely on and reinforce a sense of community that may be
   hackerdom's most valuable intangible asset.

:hammer: vt. Commonwealth hackish syn. for {bang on}.

:handle: [from CB slang] n.  An electronic pseudonym; a `nom de
   guerre' intended to conceal the user's true identity.  Network and
   BBS handles function as the same sort of simultaneous concealment
   and display one finds on Citzens's Band radio, from which the term
   was adopted.  Use of grandiose handles is characteristic of
   {cracker}s, {weenie}s, {spod}s, and other lower forms of
   network life; true hackers travel on their own reputations rather
   than invented legendry.

:haque: /hak/ [USENET] n. Variant spelling of {hack}, used
   only of the noun form and connoting an {elegant} hack.

:HHOK: See {ha ha only serious}.

:HHOS: See {ha ha only serious}.

:hing: // [IRC] n. Fortuitous typo for `hint', now in wide
   intentional use among players of {initgame}.  Compare
   {newsfroup}, {filk}.

:ICBM address: n. (Also `missile address') The form used to
   register a site with the USENET mapping project includes a blank
   for longitude and latitude, preferably to seconds-of-arc accuracy.
   This is actually used for generating geographically-correct maps of
   USENET links on a plotter; however, it has become traditional to
   refer to this as one's `ICBM address' or `missile address', and
   many people include it in their {sig block} with that name.

:initgame: /in-it'gaym/ [IRC] n.  An {IRC} version of the
   venerable trivia game "20 questions", in which one user changes
   his {nick} to the initials of a famous person or other named
   entity, and the others on the channel ask yes or no questions, with
   the one to guess the person getting to be "it" next.  As a
   courtesy, the one picking the initials starts by providing a
   4-letter hint of the form sex, nationality, life-status,
   reality-status.  For example, MAAR means "Male, American, Alive,
   Real" (as opposed to "fictional").  Initgame can be surprisingly
   addictive.  See also {hing}.

:IRC: /I-R-C/ [Internet Relay Chat] n.  A world-wide "party
   line" network that allows one to converse with others in real
   time.  IRC is structured as a network of Internet servers, each of
   which accepts connections from client programs, one per user.  The
   IRC community and the {USENET} and {MUD} communities overlap
   to some extent, including both hackers and regular folks who have
   discovered the wonders of computer networks.  Some USENET jargon
   has been adopted on IRC, as have some conventions such as
   {emoticon}s.  There is also a vigorous native jargon,
   represented in this lexicon by entries marked `[IRC]'.  See also
   {talk mode}.
   
:jack in: v. To log on to a machine or connect to a network or
   {BBS}, esp. for purposes of entering a {virtual reality}
   simulation such as a {MUD} or {IRC} (leaving is "jacking
   out").  This term derives from {cyberpunk} SF, in which it was
   used for the act of plugging an electrode set into neural sockets
   in order to interface the brain directly to a virtual reality.
   It's primarily used by MUD & IRC fans and younger hackers on BBS
   systems.

:jupiter: [IRC] vt. To kill an {IRC} {robot} or user, and
   then take its place by adopting its {nick} so that it cannot
   reconnect.  Named after a particular IRC user who did this to
   NickServ, the robot in charge of preventing people from
   inadvertently using a nick claimed by another user.

:K-line: [IRC] v.  To ban a particular person from an {IRC}
   server, usually for grossly bad {netiquette}.  Comes from the
   `K' code used to accomplish this in IRC's configuration file.
   
:kick: [IRC] v.  To cause somebody to be removed from a {IRC}
   channel, an option only available to {CHOP}s.  This is an
   extreme measure, often used to combat extreme {flamage} or
   {flood}ing, but sometimes used at the chop's whim.
   
:kyrka: /shir'k*/ n. See {feature key}.

:Life is hard: [XEROX PARC] prov. This phrase has two possible
   interpretations: (1) "While your suggestion may have some merit, I
   will behave as though I hadn't heard it."  (2) "While your
   suggestion has obvious merit, equally obvious circumstances prevent
   it from being seriously considered."  The charm of the phrase lies
   precisely in this subtle but important ambiguity.

:line 666: [from Christian eschatological myth] n. The notational
   line of source at which a program fails for obscure reasons,
   implying either that *somebody* is out to get it (when you are
   the programmer), or that it richly deserves to be so gotten (when
   you are not). "It works when I trace through it, but seems to
   crash on line 666 when I run it."  "What happens is that whenever
   a large batch comes through, mmdf dies on the Line of the Beast.
   Probably some twit hardcoded a buffer size."

:line noise: n. 1. [techspeak] Spurious characters due to electrical
   noise in a communications link, especially an RS-232 serial
   connection.  Line noise may be induced by poor connections,
   interference or crosstalk from other circuits, electrical storms,
   {cosmic rays}, or (notionally) birds crapping on the phone
   wires.  2. Any chunk of data in a file or elsewhere that
   looks like the results of line noise in sense 1.  3. Stuff that is
   theoretically a readable text or program source but employs syntax
   so bizarre that it looks like line noise in senses 1 or 2.  Yes,
   there are languages this ugly; {TECO} and {INTERCAL}, to
   name just two.

:loose bytes: n. Commonwealth hackish term for the padding bytes
   many compilers insert between members of a record or structure to
   cope with alignment requirements imposed by the machine
   architecture.

:maximum Maytag mode: What a {washing machine} or, by extension,
   any hard disk is in when it's being used so heavily that it's
   shaking like an old Maytag with an unbalanced load. If prolonged
   for any length of time, can lead to disks becoming {walking
   drives}.

:memory smash: [XEROX PARC] n. Writing through a pointer that
   doesn't point to what you think it does.  This occasionally reduces
   your machine to a rubble of bits.  Note that this is subtly
   different from (and more general than) related terms such as a
   {memory leak} or {fandango on core} because it doesn't imply
   an allocation error or overrun condition.

:metasyntactic variable: n. A name used in examples and understood
   to stand for whatever thing is under discussion, or any random
   member of a class of things under discussion.  The word {foo} is
   the {canonical} example.  To avoid confusion, hackers never use
   `foo' or other words like it as permanent names for anything.  In
   filenames, a common convention is that any filename beginning with
   a metasyntactic-variable name is a {scratch} file that may be deleted
   at any time.

   To some extent, the list of one's preferred metasyntactic variables
   is a cultural signature.  They occur both in series (used for
   related groups of variables or objects) and as singletons.  Here
   are a few common signatures:
{foo}, {bar}, {baz}, {quux}, quuux, quuuux...:
        MIT/Stanford usage, now found everywhere.  At MIT, {baz} dropped
        out of use for a while in the 1970s and '80s. A common recent mutation
        of this sequence inserts {qux} before {quux}.
{foo}, {bar}, thud, grunt:
        This series was popular at CMU.  Other CMU-associated variables
        include {gorp}.
{foo}, {bar}, fum:
        This series is reported common at XEROX PARC.
{fred}, {barney}:
        See the entry for {fred}.  These tend to be Britishisms.
{toto}, titi, tata, tutu:
        Standard series of metasyntactic variables among francophones.
{corge}, {grault}, {flarp}:
        Popular at Rutgers University and among {GOSMACS} hackers.

   Of all these, only `foo' and `bar' are universal (and {baz}
   nearly so).  The compounds {foobar} and `foobaz' also enjoy
   very wide currency.  

   Some jargon terms are also used as metasyntactic names; {barf}
   and {mumble}, for example.  See also :Commonwealth Hackish::
   for discussion of numerous metasyntactic variables found in Great
   Britain and the Commonwealth.

:missile address: n. See {ICBM address}.

:muddie: n. Syn. {mudhead}.  Commoner in Great Britain, possibly
   because system administrators there like to mutter "bloody
   muddies" when annoyed at the species.

:nadger: [Great Britain] v. Of software or hardware (not people),
   to twiddle some object in a hidden manner, generally so that it
   conforms better to some format.  For instance, string printing
   routines on 8-bit processors often take the string text from the
   instruction stream, thus a print call looks like `jsr
   print:"Hello world"'. The print routine has to `nadger' the
   return instruction pointer so that the processor doesn't try to
   execute the text as instructions.

:neats vs. scruffies: n. The label used to refer to one of the
   continuing {holy wars} in AI research.  This conflict tangles
   together two separate issues.  One is the relationship between
   human reasoning and AI; `neats' tend to try to build systems
   that `reason' in some way identifiably similar to the way humans
   report themselves as doing, while `scruffies' profess not to
   care whether an algorithm resembles human reasoning in the least as
   long as it works.  More importantly, `neats' tend to believe
   that logic is king, while `scruffies' favor looser, more ad-hoc
   methods driven by empirical knowledge.  To a `neat',
   `scruffy' methods appear promiscuous and successful only by
   accident; to a `scruffy', `neat' methods appear to be hung up
   on formalism and irrelevant to the hard-to-capture `common
   sense' of living intelligences.

:netburp: [IRC] n.  When {netlag} gets really bad, and delays
   between servers exceed a certain threshhold, the {IRC} network
   effectively becomes partitioned for a period of time, and large
   numbers of people seem to be signing off at the same time and then
   signing back on again when things get better.  An instance of this
   is called a `netburp' (or, sometimes, {netsplit}).
   
:netdead: [IRC] n.  The state of someone who signs off of {IRC},
   perhaps during a {netburp}, and doesn't sign back on until
   later.  In the interim, he is "dead to the net".

:netlag: [IRC, MUD] n.  A condition that occurs when the delays in
   the {IRC} network or on a {MUD} become severe enough that
   servers briefly lose and then reestablish contact, causing messages
   to be delivered in bursts, often with delays of up to a minute.
   Note that this term does not have the sense of "jetlag", a
   syndrome affecting people who travel to distant places and are
   forced into odd sleeping patterns, probably because for hackers
   this is quite normal.
   
:netsplit: n. Syn. {netburp}.

:netter: n. 1. Loosely, anyone with a {network address}.  2. More
   specifically, a {USENET} regular.  Most often found in the
   plural.  "If you post *that* in a technical group, you're
   going to be flamed by angry netters for the rest of time!"

:nick: [IRC] n.  Short for nickname.  On {IRC}, every user must
   pick a nick, which is sometimes the same as the user's real name or
   login name, but is often more fanciful.
   
:Nominal Semidestructor: n. Sound-alike slang for `National
   Semiconductor', found among other places in the 4.3BSD networking
   sources.  During the late 1970s to mid-1980s this company marketed
   a series of microprocessors including the NS16000 and NS32000 and
   several variants.  At one point early in the great microprocessor
   race, the specs on these chips made them look like serious
   competition for the rising Intel 80x86 and Motorola 680x0 series.
   Unfortunately, the actual parts were notoriously flaky and never
   implemented the full instruction set promised in their literature,
   apparently because the company couldn't get any of the mask
   steppings to work as designed.  They eventually sank without trace,
   joining the Zilog Z80,000 and a few even more obscure also-rans in
   the graveyard of forgotten microprocessors.  Compare {HP-SUX},
   {buglix}, {Telerat}, {sun-stools}.

:one-banana problem: n. At mainframe shops, where the computers
   have operators for routine administrivia, the programmers and
   hardware people tend to look down on the operators and claim that a
   trained monkey could do their job.  It is frequently observed that
   the incentives which would be offered said monkeys can be used
   as a scale to describe the difficulty of a task.  A one-banana
   problem is simple; hence "It's only a one-banana job at the most;
   what's taking them so long?"

   At IBM, folklore divides the world into one-, two- and three-banana
   problems.  Other cultures have different hierarchies and may divide
   them more finely; at ICL, for example, five grapes (a bunch) equals
   a banana.  Their upper limit for the in-house {sysape}s is said
   to be two bananas and three grapes.  At any more complicated than
   that, one asks the manufacturers to send someone around to check
   things.

:op: /op/ [IRC] n.  Someone who is endowed with privileges on
   {IRC}, not limited to a particular channel.  These are generally
   people who are in charge of the IRC server at their particular
   site.  Sometimes used interchangably with {CHOP}.  Compare
   {sysop}.

:optical diff: n. See {vdiff}.

:overflow pdl: [MIT] n. The place where you put things when your
   {pdl} is full.  If you don't have one and too many things get
   pushed, you forget something.  The overflow pdl for a person's
   memory might be a memo pad.  This usage inspired the following
   doggerel:

     Hey, diddle, diddle
     The overflow pdl
        To get a little more stack;
     If that's not enough
     Then you lose it all,
        And have to pop all the way back.
                                    --The Great Quux

   The term {pdl} seems to be primarily an MITism; outside MIT this
   term would logically be replaced by `overflow {stack}', but
   the editors have heard no report of the latter term actually being
   in use.

:phase-wrapping: [MIT] n. Unintentional cycling of {phase} due
   to waking up 2 or 3 hours later each waking cycle.  Sometimes it
   meant the intentional shift of phase over several days in order to
   be awake at a particularly important time, say, a final exam.
   Compare {wrap around}.

:plaid screen: [XEROX PARC] n. A `special effect' which occurs
   when certain kinds of {memory smash}es overwrite the control
   blocks or image memory of a bit-mapped display.  The term "salt &
   pepper" may refer to a different pattern of similar origin.
   Though the term as coined at PARC refers to the result of an error,
   some of the {X} demos induce plaid-screen effects deliberately
   as a {display hack}.

:point-and-drool interface: n. Parody of the techspeak term
   `point-and-shoot interface', describing a windows, icons, and
   mice-based interface such as is found on the Macintosh.  The
   implication, of course, is that such an interface is only suitable
   for idiots.  See {for the rest of us}, {WIMP environment},
   {Macintrash}, {drool-proof paper}.  Also `point-and-grunt
   interface'.

:power hit: n.  A spike or drop-out in the electricity supplying
   your machine; a power {glitch}.  These can cause crashes and
   even permanent damage to your machine(s).

:printing discussion: [PARC] n. A protracted, low-level,
   time-consuming, generally pointless discussion of something only
   peripherally interesting to all.

:programming fluid: n. 1. Coffee.  2. Cola.  3. Any caffeinacious
   stimulant.  Many hackers consider these essential for those
   all-night hacking runs.

:Q-line: [IRC] v.  To ban a particular {IRC} server from
   connecting to one's own; does to it what {K-line} does to an
   individual.  Since this is applied transitively, it has the effect
   of partitioning the IRC network, which is generally a {bad
   thing}.
   
:register dancing: n. Many older processor architectures suffer
   from a serious shortage of general-purpose registers.  This is
   especially a problem for compiler-writers, because their generated
   code needs places to store temporaries for things like intermediate
   values in expression evaluation.  Some designs with this problem,
   like the Intel 80x86, do have a handful of special-purpose
   registers that can be pressed into service, providing suitable care
   is taken to avoid unpleasant side-effects on the state of the
   processor.  The act of coding around these restrictions is
   sometimes called {register dancing}.

:robot: [IRC, MUD] n. An {IRC} or {MUD} user who is actually
   a program.  On IRC, typically the robot provides some useful
   service.  Examples are NickServ, which tries to prevent random
   users from adopting {nick}s already claimed by others, and
   MsgServ, which allows one to send asynchronous messages to be
   delivered when the recipient signs on.  Also common are
   "annoybots", such as KissServ, which perform no useful function
   except to send cute messages to other people.  Service robots are
   less common on MUDs; but some others, such as the `Julia' robot
   active in 1990-91, have been remarkably impressive Turing-test
   experiments, able to pass as human for as long as ten or fifteen
   minutes of conversation.

:RTBM: /R-T-B-M/ [UNIX] imp. Commonwealth Hackish variant of
   {RTFM}; expands to `Read The Bloody Manual'.  RTBM is often the
   entire text of the first reply to a question from a {newbie};
   the *second* would escalate to "RTFM".

:RTFB: n. /R-T-F-B/ [UNIX] imp. Acronym for `Read The Fucking
   Binary'.  Used when no manuals nor the the source for the
   problem at hand exist and the only thing to do is use some
   debugger or monitor and directly analyze the assembler or even
   the machine code. "No source for the buggy port driver?  Aaargh! I
   *hate* proprietary operating systems.  Time to RTFB."

:RTFS: n. /R-T-F-S/ [UNIX] 1. imp. Acronym for `Read The Fucking
   Source'.  Stronger form of {RTFM}, used when the problem
   at hand is not necessarily obvious and not available from
   the manuals --- or the manuals are not yet written and maybe
   never will be.  For even more tricky situations, see {RTFB}.
   2. imp. Variant of {RTFM}, where `S' stands for `Standard'.

:samurai: n. A hacker who hires out for legal cracking jobs,
   snooping for factions in corporate political fights, lawyers
   pursuing privacy-rights and First Amendment cases, and other
   parties with legitimate reasons to need an electronic locksmith.
   In 1991, mainstream media reported the existence of a loose-knit
   culture of samurai that meets electronically on BBS systems, mostly
   bright teenagers with personal micros; they have modelled
   themselves explicitly on the historical samurai of Japan and on the
   "net cowboys" of William Gibson's {cyberpunk} novels.  Those
   interviewed claim to adhere to a rigid ethic of loyalty to their
   employers and to disdain the vandalism and theft practiced by
   criminal crackers as beneath them and contrary to the hacker ethic;
   some quote Miyamoto Musashi's `Book of Five Rings', a classic
   of historical samurai doctrine, in support of these principles.
   See also {Stupids}, {social engineering}, {cracker},
   {hacker ethic, the}, and {dark-side hacker}.

:scag: vt. To destroy the data on a disk, either by corrupting the
  filesystem or by causing media damage.  "That last power hit scagged
  the system disk."  Compare {scrog}, {roach}.

:sig virus: n. A parasitic {meme} embedded in a {sig block}.
   There was a {meme plague} or fad for these on USENET in late
   1991.  Most were equivalents of "I am a .sig virus.  Please reproduce
   me in your .sig block.".  Of course, the .sig virus's memetic hook
   was the giggle value of going along with the gag; this, however,
   was a self-limiting phenomenon as more and more people picked up
   on the idea.  There were creative variants on it; some people
   stuck `sig virus antibody' texts in their sigs, and there was at
   least one instance of a sig virus eater.

:smurf: /smerf/ [from the soc.motss newsgroup on USENET,
   after some obnoxiously gooey cartoon characters] n.  A newsgroup
   regular with a habitual style that is irreverent, silly, and
   cute.  Like many other hackish terms for people, this one may
   be praise or insult depending on who uses it.  In general, being
   referred to as a smurf is probably not going to make your day
   unless you've previously adopted the label yourself in a spirit of
   irony.  Compare {old fart}.

:social engineering: n. Term used among {cracker}s and
   {samurai} for cracking techniques that rely on weaknesses in
   {wetware} rather than software; the aim is to trick people into
   revealing passwords or other information that compromises a target
   system's security.  Classic scams include phoning up a mark who has
   the required information and posing as a field service tech or a
   fellow employee with an urgent access problem.

:spod: [Great Britain] n. A lower form of life found on {talker
   system}s and {MUD}s.  The spod has few friends in {RL} and
   uses talkers instead, finding communication easier and preferable
   over the net.  He has all the negative traits of the {computer
   geek} without having any interest in computers per se.  Lacking any
   knowledge of or interest in how networks work, and considering his
   access a God-given right, he is a major irritant to sysadmins,
   clogging up lines in order to reach new MUDs, following passed-on
   instructions on how to sneak his way onto {Internet} ("Wow!
   It's in America!") and complaining when he is not allowed to use
   busy routes.  A true spod will start any conversation with "Are
   you male or female?"  and will not talk to someone physically
   present in the same terminal room until they log onto the same
   machine that he is using. Compare {newbie}, {tourist},
   {weenie}, {twink}, {terminal junkie}.

:stone knives and bearskins: [ITS, prob. from the Star Trek Classic
   episode "The City On The Edge Of Forever"] n. A term traditionally
   used by {ITS} fans to describe (and deprecate) computing
   environments they regarded as less advanced, with the (often
   correct) implication that said environments were grotesquely
   primitive in light of what was known about good ways to design
   things.  As in "Don't get too used to the facilities here.  Once
   you leave MIT it's stone knives and bearskins as far as the eye can
   see".  Compare {steam-powered}.

:Stupids: n. Term used by {samurai} for the {suit}s who
   employ them; succinctly expresses an attitude at least as common,
   though usually better disguised, among other subcultures of
   hackers.

:sun lounge: [Great Britain] n. The room where all the Sun
   workstations live.  The humor in this term comes from the fact
   that it's also in mainstream use to describe a solarium, and all
   those Sun workstations clustered together give off an amazing
   amount of heat.

:sysape: n. A rather derogatory term for a computer operator; a play
   on {sysop} common at sites that use the banana hierarchy of
   problem complexity (see {one-banana problem}).

:TANSTAAFL: /tan'stah-fl/ [acronym, from Robert Heinlein's
   classic `The Moon is a Harsh Mistress'.]  "There Ain't No
   Such Thing As A Free Lunch", often invoked when someone is balking
   at an ugly design requirement or the prospect of using an
   unpleasantly {heavyweight} technique.  "What? Don't tell me I
   have to implement a database back end to get my address book
   program to work!"  "Well, TANSTAAFL you know."  This phrase owes
   some of its popularity to the high concentration of science-fiction
   fans and political libertarians in hackerdom (see Appendix
   B).

:This can't happen: Less clipped variant of {can't happen}.

:thumb: n. The slider on a window-system scrollbar.  So called
   because moving it allows you to browse through the contents of a
   text window in a way analogous to thumbing through a book.

:Turing tar-pit: n. 1. A place where anything is possible but
   nothing of interest is practical.  Alan Turing helped lay the
   foundations of computer science by showing that all machines and
   languages capable of expressing a certain very primitive set of
   operations are logically equivalent in the kinds of computations
   they can carry out, and in principle have capabilities that differ
   only in speed from those of the most powerful and
   elegantly-designed computers.  However, no machine or language
   exactly matching Turing's primitive set has ever been built (other
   than possibly as a classroom exercise), because it would be
   horribly slow and far too painful to use.  A `Turing tar-pit' is
   any computer language or other tool which shares this property.
   That is, it's theoretically universal --- but in practice, the
   harder you struggle to get any real work done, the deeper its
   inadequacies suck you in.  Compare {bondage-and-discipline
   language}.  2. The perennial {holy wars} over whether language A
   or B is the "most powerful".

:tweeter: [University of Waterloo] n. Syn. {perf}, {chad}
   (sense 1).  This term (like {woofer}) has been in use at
   Waterloo since 1972, but is elsewhere unknown.  The word originally
   referred to the treble speaker(s) on a hi-fi.

:twilight zone: [IRC] n.  Notionally, the area of cyberspace where {IRC}
   operators live.  An {op} is said to have a "connection to the
   twilight zone".
   
:unroll: v. To repeat the body of a loop several times in succession.
   This optimization technique reduces the number of times the
   loop-termination test has to be executed.  But it only works if
   the number of iterations desired is a multiple of the number of
   repetitions of the body.  Something has to be done to take care
   of any leftover iterations --- such as {Duff's device}.

:whack: v. According to arch-hacker James Gosling, to "...modify a
   program with no idea whatsoever how it works." (see {whacker}).
   It is actually possible to do this in nontrivial circumstances if
   the change is small and well-defined and you are very good at
   {glark}ing things from context.  As a trivial example, it's
   relatively easy to change all `stderr' writes to `stdout'
   writes in a piece of C filter code which remains otherwise
   mysterious.

:whalesong: n. The peculiar clicking and whooshing sounds made by a
   PEP modem such as the Telebit Trailblazer as it tries to
   synchronize with another PEP modem for their special high-speed
   mode.  This sound isn't anything like the normal two-tone handshake
   between conventional modems and is instantly recognizable to anyone
   who has heard it more than once.  It sounds, in fact, very much
   like whale songs.

:What's a spline?: [XEROX PARC] This phrase expands to: "You have
   just used a term that I've heard for a year and a half, and I feel
   I should know, but don't.  My curiosity has finally overcome my
   guilt."  The PARC lexicon adds "Moral: don't hesitate to ask
   questions, even if they seem obvious."

:woofer: [University of Waterloo] n. Some varieties of wide paper
   for printers have a perforation 8.5 inches from the left margin
   that allows the excess on the right-hand side to be torn off when
   the print format is 80 columns or less wide.  The right-hand excess
   may be called `woofer'.  This term (like {tweeter}, which see)
   has been in use at Waterloo since 1972, but is elsewhere unknown.
   The word originally referred to the base speaker(s) on a
   hi-fi.

:WYSIAYG: /wiz'ee-ayg/ adj. Describes a user interface under
   which "What You See Is *All* You Get"; an unhappy variant of
   {WYSIWYG}.  Visual, `point-and-shoot'-style interfaces tend to
   have easy initial learning curves, but also to lack depth; they
   often frustrate advanced users who would be better served by a
   command-style interface.  When this happens, the frustrated user
   has a WYSIAYG problem.  This term is most often used of editors,
   word processors, and document formatting programs.  WYSIWYG
   `desktop publishing' programs, for example, are a clear win for
   creating small documents with lots of fonts and graphics in them,
   especially things like newsletters and presentation slides.  When
   typesetting book-length manuscripts, on the other hand, scale
   changes the nature of the task; one quickly runs into WYSIAYG
   limitations, and the increased power and flexibility of a
   command-driven formatter like TeX or UNIX's `troff(1)' becomes
   not just desirable but a necessity.

:XEROX PARC: The famed Palo Alto Research Center.  For more than a
   decade, from the early 1970s into the mid-1980s, PARC yielded an
   astonishing volume of groundbreaking hardware and software
   innovations.  The modern mice, windows, and icons style of software
   interface was invented there.  So was the laser printer, and the
   local-area network; and PARC's series of D machines anticipated the
   poweful personal computers of the 1980s by a decade.  Sadly, these
   prophets were without honor in their own company; so much so that
   it became a standard joke to describe PARC as a place characterized
   by developing brilliant ideas for everyone else.


******************** Changed entries **************************

:ASCII:: [American Standard Code for Information Interchange]
   /as'kee/ n. The predominant character set encoding of present-day
   computers.  Uses 7 bits for each character, whereas most earlier
   codes (including an early version of ASCII) used fewer.  This
   change allowed the inclusion of lowercase letters --- a major
   {win} --- but it did not provide for accented letters or any
   other letterforms not used in English (such as the German sharp-S
   and the ae-ligature
   which is a letter in, for example, Norwegian).  It could be worse,
   though.  It could be much worse.  See {{EBCDIC}} to understand how.
   
   Computers are much pickier and less flexible about spelling than
   humans; thus, hackers need to be very precise when talking about
   characters, and have developed a considerable amount of verbal
   shorthand for them.  Every character has one or more names --- some
   formal, some concise, some silly.  Common jargon names for ASCII
   characters are collected here.  See also individual entries for
   {bang}, {excl}, {open}, {ques}, {semi}, {shriek},
   {splat}, {twiddle}, and {Yu-Shiang Whole Fish}.

   This list derives from revision 2.3 of the USENET ASCII
   pronunciation guide.  Single characters are listed in ASCII order;
   character pairs are sorted in by first member.  For each character,
   common names are given in rough order of popularity, followed by
   names that are reported but rarely seen; official ANSI/CCITT names
   are surrounded by brokets: <>.  Square brackets mark the
   particularly silly names introduced by {INTERCAL}.  Ordinary
   parentheticals provide some usage information.

     !
          Common: {bang}; pling; excl; shriek; <exclamation mark>.
          Rare: factorial; exclam; smash; cuss; boing; yell; wow; hey;
          wham; [spark-spot]; soldier.

     "
          Common: double quote; quote.  Rare: literal mark;
          double-glitch; <quotation marks>; <dieresis>; dirk;
          [rabbit-ears]; double prime.

     #
          Common: <number sign>; pound; pound sign; hash; sharp;
          {crunch}; hex; [mesh]; octothorpe.  Rare: flash; crosshatch;
          grid; pig-pen; tictactoe; scratchmark; thud; thump; {splat}.

     $
          Common: dollar; <dollar sign>.  Rare: currency symbol; buck;
          cash; string (from BASIC); escape (when used as the echo of
          ASCII ESC); ding; cache; [big money].

     %
          Common: percent; <percent sign>; mod; grapes.  Rare:
          [double-oh-seven].

     &
          Common: <ampersand>; amper; and.  Rare: address (from C);
          reference (from C++); andpersand; bitand; background (from
          `sh(1)'); pretzel; amp.  [INTERCAL called this `ampersand';
          what could be sillier?]

     '
          Common: single quote; quote; <apostrophe>.  Rare: prime;
          glitch; tick; irk; pop; [spark]; <closing single quotation
          mark>; <acute accent>.

     ()
          Common: left/right paren; left/right parenthesis; left/right;
          paren/thesis; open/close paren; open/close; open/close
          parenthesis; left/right banana.  Rare: so/al-ready;
          lparen/rparen; <opening/closing parenthesis>; open/close round
          bracket, parenthisey/unparenthisey; [wax/wane]; left/right
          ear.

     *
          Common: star; [{splat}]; <asterisk>.  Rare: wildcard; gear;
          dingle; mult; spider; aster; times; twinkle; glob (see
          {glob}); {Nathan Hale}.

     +
          Common: <plus>; add.  Rare: cross; [intersection].

     ,
          Common: <comma>.  Rare: <cedilla>; [tail].

     -
          Common: dash; <hyphen>; <minus>.  Rare: [worm]; option; dak;
          bithorpe.

     .
          Common: dot; point; <period>; <decimal point>.  Rare: radix
          point; full stop; [spot].

     /
          Common: slash; stroke; <slant>; forward slash.  Rare:
          diagonal; solidus; over; slak; virgule; [slat].

     :
          Common: <colon>.  Rare: dots; [two-spot].

     ;
          Common: <semicolon>; semi.  Rare: weenie; [hybrid],
          pit-thwong.

     <>
          Common: <less/greater than>; left/right angle bracket;
          bra/ket; left/right broket.  Rare: from/{into, towards}; read
          from/write to; suck/blow; comes-from/gozinta; in/out;
          crunch/zap (all from UNIX); [angle/right angle].

     =
          Common: <equals>; gets; takes.  Rare: quadrathorpe;
          [half-mesh].

     ?
          Common: query; <question mark>; {ques}.  Rare: whatmark;
          [what]; wildchar; huh; hook; buttonhook; hunchback.

     @
          Common: at sign; at; strudel.  Rare: each; vortex; whorl;
          [whirlpool]; cyclone; snail; ape; cat; rose; cabbage;
          <commercial at>.

     V
          Rare: [book].

     []
          Common: left/right square bracket; <opening/closing bracket>;
          bracket/unbracket; left/right bracket.  Rare: square/unsquare;
          [U turn/U turn back].

     \
          Common: backslash; escape (from C/UNIX); reverse slash; slosh;
          backslant; backwhack.  Rare: bash; <reverse slant>; reversed
          virgule; [backslat].

     ^
          Common: hat; control; uparrow; caret; <circumflex>.  Rare:
          chevron; [shark (or shark-fin)]; to the (`to the power of');
          fang; pointer (in Pascal).

     _
          Common: <underline>; underscore; underbar; under.  Rare:
          score; backarrow; skid; [flatworm].

     `
          Common: backquote; left quote; left single quote; open quote;
          <grave accent>; grave.  Rare: backprime; [backspark];
          unapostrophe; birk; blugle; back tick; back glitch; push;
          <opening single quotation mark>; quasiquote.

     {}
          Common: open/close brace; left/right brace; left/right
          squiggly; left/right squiggly bracket/brace; left/right curly
          bracket/brace; <opening/closing brace>.  Rare: brace/unbrace;
          curly/uncurly; leftit/rytit; left/right squirrelly;
          [embrace/bracelet].

     |
          Common: bar; or; or-bar; v-bar; pipe; vertical bar.  Rare:
          <vertical line>; gozinta; thru; pipesinta (last three from
          UNIX); [spike].

     ~
          Common: <tilde>; squiggle; {twiddle}; not.  Rare: approx;
          wiggle; swung dash; enyay; [sqiggle (sic)].

   The pronunciation of `#' as `pound' is common in the U.S.
   but a bad idea; {{Commonwealth Hackish}} has its own, rather more
   apposite use of `pound sign' (confusingly, on British keyboards
   the pound graphic
   happens to replace `#'; thus Britishers sometimes
   call `#' on a U.S.-ASCII keyboard `pound', compounding the
   American error).  The U.S. usage derives from an old-fashioned
   commercial practice of using a `#' suffix to tag pound weights
   on bills of lading.  The character is usually pronounced `hash'
   outside the U.S.

   The `uparrow' name for circumflex and `leftarrow' name for
   underline are historical relics from archaic ASCII (the 1963
   version), which had these graphics in those character positions
   rather than the modern punctuation characters.

   The `swung dash' or `approximation' sign is not quite the same
   as tilde in typeset material
   but the ASCII tilde serves for both (compare {angle
   brackets}).

   Some other common usages cause odd overlaps.  The `#',
   `$', `>', and `&' characters, for example, are all
   pronounced "hex" in different communities because various
   assemblers use them as a prefix tag for hexadecimal constants (in
   particular, `#' in many assembler-programming cultures,
   `$' in the 6502 world, `>' at Texas Instruments, and
   `&' on the BBC Micro, Sinclair, and some Z80 machines).  See
   also {splat}.

   The inability of ASCII text to correctly represent any of the
   world's other major languages makes the designers' choice of 7 bits
   look more and more like a serious {misfeature} as the use of
   international networks continues to increase (see {software
   rot}).  Hardware and software from the U.S. still tends to embody
   the assumption that ASCII is the universal character set; this is a
   a major irritant to people who want to use a character set suited
   to their own languages.  Perversely, though, efforts to solve this
   problem by proliferating `national' character sets produce an
   evolutionary pressure to use a *smaller* subset common to all
   those in use.

:BartleMUD: /bar'tl-muhd/ n. Any of the MUDs derived from the
   original MUD game by Richard Bartle and Roy Trubshaw (see
   {MUD}).  BartleMUDs are noted for their (usually slightly
   offbeat) humor, dry but friendly syntax, and lack of adjectives in
   object descriptions, so a player is likely to come across
   `brand172', for instance (see {brand brand brand}).  Bartle has
   taken a bad rap in some MUDding circles for supposedly originating
   this term, but (like the story that MUD is a trademark) this
   appears to be a myth; he uses `MUD1'.

:baz: /baz/ n. 1. The third {metasyntactic variable} "Suppose we
   have three functions: FOO, BAR, and BAZ.  FOO calls BAR, which
   calls BAZ...." (See also {fum}) 2. interj. A term of mild
   annoyance.  In this usage the term is often drawn out for 2 or 3
   seconds, producing an effect not unlike the bleating of a sheep;
   /baaaaaaz/.  3. Occasionally appended to {foo} to produce
   `foobaz'.

   Earlier versions of this lexicon derived `baz' as a Stanford
   corruption of {bar}.  However, Pete Samson (compiler of the
   {TMRC} lexicon) reports it was already current when he joined TMRC
   in 1958.  He says "It came from `Pogo'.  Albert the Alligator,
   when vexed or outraged, would shout `Bazz Fazz!' or `Rowrbazzle!'
   The club layout was said to model the (mythical) New England
   counties of Rowrfolk and Bassex (Rowrbazzle mingled with
   (Norfolk/Suffolk/Middlesex/Essex)."

:bounce: v. 1. [perhaps from the image of a thrown ball bouncing
   off a wall] An electronic mail message that is undeliverable and
   returns an error notification to the sender is said to `bounce'.
   See also {bounce message}.  2. [Stanford] To play volleyball.
   At the now-demolished {D. C. Power Lab} building used by the
   Stanford AI Lab in the 1970s, there was a volleyball court on the
   front lawn.  From 5 P.M. to 7 P.M. was the scheduled
   maintenance time for the computer, so every afternoon at 5 the
   computer would become unavailable, and over the intercom a voice
   would cry, "Now hear this: bounce, bounce!" followed by Brian
   McCune loudly bouncing a volleyball on the floor outside the
   offices of known volleyballers.  3. To engage in sexual
   intercourse; prob. from the expression `bouncing the mattress',
   but influenced by Roo's psychosexually loaded "Try bouncing me,
   Tigger!" from the "Winnie-the-Pooh" books.  Compare
   {boink}.  4. To casually reboot a system in order to clear up a
   transient problem.  Reported primarily among {VMS} users.
   5. [IBM] To {power cycle} a peripheral in order to reset it.

:bug: n. An unwanted and unintended property of a program or
   hardware, esp. one that causes it to malfunction.  Antonym of
   {feature}.  Examples: "There's a bug in the editor: it writes
   things out backwards."  "The system crashed because of a hardware
   bug."  "Fred is a winner, but he has a few bugs" (i.e., Fred is
   a good guy, but he has a few personality problems).

   Historical note: Some have said this term came from telephone
   company usage, in which "bugs in a telephone cable" were blamed
   for noisy lines, but this appears to be an incorrect folk
   etymology.  Admiral Grace Hopper (an early computing pioneer better
   known for inventing {COBOL}) liked to tell a story in which a
   technician solved a persistent {glitch} in the Harvard Mark II
   machine by pulling an actual insect out from between the contacts
   of one of its relays, and she subsequently promulgated {bug} in
   its hackish sense as a joke about the incident (though, as she was
   careful to admit, she was not there when it happened).  For many
   years the logbook associated with the incident and the actual bug
   in question (a moth) sat in a display case at the Naval Surface
   Warfare Center.  The entire story, with a picture of the logbook
   and the moth taped into it, is recorded in the `Annals of the
   History of Computing', Vol. 3, No. 3 (July 1981), pp. 285--286.

   The text of the log entry (from September 9, 1945), reads "1545
   Relay #70 Panel F (moth) in relay.  First actual case of bug being
   found".  This wording seems to establish that the term was already
   in use at the time in its current specific sense --- and Hopper
   herself reports that the term `bug' was regularly applied to
   problems in radar electronics during WWII.  Indeed, the use of
   `bug' to mean an industrial defect was already established in
   Thomas Edison's time, and `bug' in the sense of an disruptive
   event goes back to Shakespeare!  In the first edition of Samuel
   Johnson's dictionary one meaning of `bug' is "A frightful
   object; a walking spectre"; this is traced to `bugbear', a Welsh
   term for a variety of mythological monster which (to complete the
   circle) has recently been reintroduced into the popular lexicon
   through fantasy role-playing games.

   In any case, in jargon the word almost never refers to insects.
   Here is a plausible conversation that never actually happened:

   "There is a bug in this ant farm!"

   "What do you mean?  I don't see any ants in it."

   "That's the bug."

   [There has been a widespread myth that the original bug was moved
   to the Smithsonian, and an earlier version of this entry so
   asserted.  A correspondent who thought to check discovered that the
   bug was not there.  While investigating this in late 1990, your
   editor discovered that the NSWC still had the bug, but had
   unsuccessfully tried to get the Smithsonian to accept it --- and
   that the present curator of their History of American Technology
   Museum didn't know this and agreed that it would make a worthwhile
   exhibit.  It was moved to the Smithsonian in mid-1991.  Thus, the
   process of investigating the original-computer-bug bug fixed it in
   an entirely unexpected way, by making the myth true!  --- ESR]

:Chernobyl packet: /cher-noh'b*l pak'*t/ n. A network packet that
   induces {network meltdown} (the result of a {broadcast
   storm}), in memory of the April 1986 nuclear accident at Chernobyl
   in Ukraine.  The typical case of this is an IP Ethernet datagram
   that passes through a gateway with both source and destination
   Ether and IP address set as the respective broadcast addresses for
   the subnetworks being gated between.  Compare {Christmas tree
   packet}.

:command key: [Mac users] n. Syn. {feature key}.

:compress: [UNIX] vt. When used without a qualifier, generally
   refers to {crunch}ing of a file using a particular
   C implementation of compression by James A. Woods et al. and
   widely circulated via {USENET}; use of {crunch} itself in
   this sense is rare among UNIX hackers.  Specifically, compress is
   built around the Lempel-Ziv-Welch algorithm as described in "A
   Technique for High Performance Data Compression", Terry A. Welch,
   `IEEE Computer', vol. 17, no. 6 (June 1984), pp. 8-19.

:copybroke: /ko'pee-brohk/ adj. 1. [play on `copyright'] Used
   to describe an instance of a copy-protected program that has been
   `broken'; that is, a copy with the copy-protection scheme
   disabled.  Syn.  {copywronged}.  2. Copy-protected software
   which is unusable because of some bit-rot or bug that has confused
   the anti-piracy check.

:cracker: n. One who breaks security on a system.  Coined ca. 1985
   by hackers in defense against journalistic misuse of {hacker}
   (q.v., sense 8).  An earlier attempt to establish `worm' in this
   sense around 1981--82 on USENET was largely a failure.

   Both these neologisms reflected a strong revulsion against the
   theft and vandalism perpetrated by cracking rings.  While it's
   expected that any real hacker will have done some playful cracking
   and knows many of the basic techniques, anyone past {larval
   stage} is expected to have outgrown the desire to do so.

   Thus, there is far less overlap between hackerdom and crackerdom
   than the {mundane} reader misled by sensationalistic journalism
   might expect.  Crackers tend to gather in small, tight-knit, very
   secretive groups that have little overlap with the huge, open
   poly-culture this lexicon describes; though they often like to
   describe *themselves* as hackers, most true hackers consider
   them a separate and lower form of life.

   Ethical considerations aside, hackers figure that anyone who can't
   imagine a more interesting way to play with their computers than
   breaking into someone else's has to be pretty {losing}.  Some
   other reasons crackers are looked down on are discussed in the
   entries on {cracking} and {phreaking}.  See also
   {samurai}, {dark-side hacker}, and {hacker ethic,
   the}.

:cruft: /kruhft/ [back-formation from {crufty}] 1. n. An
   unpleasant substance.  The dust that gathers under your bed is
   cruft; the TMRC Dictionary correctly noted that attacking it with a
   broom only produces more.  2. n. The results of shoddy
   construction.  3. vt. [from `hand cruft', pun on `hand craft']
   To write assembler code for something normally (and better) done by
   a compiler (see {hand-hacking}).  4. n. Excess; superfluous
   junk.  Esp. used of redundant or superseded code.

   This term is one of the oldest in the jargon and no one is sure of
   its etymology, but it is suggestive that there is a Cruft Hall at
   Harvard University which is part of the old physics building; it's
   said to have been the physics department's radar lab during WWII.
   To this day (early 1992) the windows appear to be full of random
   techno-junk.  MIT or Lincoln Labs people may well have coined the
   term as a knock on the competition.

:cut a tape: vi. To write a software or document distribution on
   magnetic tape for shipment.  Has nothing to do with physically
   cutting the medium!  Early versions of this lexicon claimed that
   one never analogously speaks of `cutting a disk', but this has
   since been reported as live usage.  Related slang usages are
   mainstream business's `cut a check', the recording industry's
   `cut a record' and the military's `cut an order'.

   All of these usages reflect physical processes in obsolete
   recording and duplication technologies.  The first stage in
   manufacturing an old-style vinyl record involved cutting grooves in
   a stamping die with a precision lathe.  More mundanely, the
   dominant technology for mass duplication of paper documents in
   pre-photocopying days involved "cutting a stencil", punching away
   portions of the wax overlay on a silk screen.

:DDT: /D-D-T/ n. 1. Generic term for a program that assists in
   debugging other programs by showing individual machine instructions
   in a readable symbolic form and letting the user change them.  In
   this sense the term DDT is now archaic, having been widely
   displaced by `debugger' or names of individual programs like
   `dbx', `adb', `gdb', or `sdb'.  2. [ITS] Under
   MIT's fabled {{ITS}} operating system, DDT (running under the alias
   HACTRN) was also used as the {shell} or top level command
   language used to execute other programs.  3. Any one of several
   specific DDTs (sense 1) supported on early DEC hardware.  The DEC
   PDP-10 Reference Handbook (1969) contained a footnote on the first
   page of the documentation for DDT which illuminates the origin of
   the term:

     Historical footnote: DDT was developed at MIT for the PDP-1
     computer in 1961.  At that time DDT stood for "DEC Debugging Tape".
     Since then, the idea of an on-line debugging program has propagated
     throughout the computer industry.  DDT programs are now available
     for all DEC computers.  Since media other than tape are now
     frequently used, the more descriptive name "Dynamic Debugging
     Technique" has been adopted, retaining the DDT abbreviation.
     Confusion between DDT-10 and another well known pesticide,
     dichloro-diphenyl-trichloroethane (C14-H9-Cl5) should be minimal
     since each attacks a different, and apparently mutually exclusive,
     class of bugs.

   Sadly, this quotation was removed from later editions of the
   handbook after the {suit}s took over and DEC became much more
   `businesslike'.

   The history above is known to many old-time hackers.  But there's
   more: Peter Samson, author of the {TMRC} lexicon, reports that
   he named `DDT' after a similar tool on the TX-0 computer, the
   direct ancestor of the PDP-1 built at MIT's Lincoln Lab in 1957.
   The debugger on that ground-breaking machine (the first
   transistorized computer) rejoiced in the name FLIT (FLexowriter
   Interrogation Tape).

:delint: /dee-lint/ v. To modify code to remove problems detected
   when {lint}ing.  Confusingly, this is also referred to as
   `linting' code.

:dread high-bit disease: n. A condition endemic to PRIME (a.k.a.
   PR1ME) minicomputers that results in all the characters having
   their high (0x80) bit ON rather than OFF.  This of course makes
   transporting files to other systems much more difficult, not to
   mention talking to true 8-bit devices.  Folklore had it that PRIME
   adopted the reversed-8-bit convention in order to save 25 cents per
   serial line per machine; PRIME old-timers, on the other hand, claim
   they inherited the disease from Honeywell via customer NASA's
   compatibility requirements and struggled manfully to cure it.
   Whoever was responsible, this probably qualifies as one of the
   most {cretinous} design tradeoffs ever made.  See {meta bit}.
   A few other machines have exhibited similar brain damage.

:epoch: [UNIX: prob. from astronomical timekeeping] n. The time
   and date corresponding to 0 in an operating system's clock and
   timestamp values.  Under most UNIX versions the epoch is 00:00:00
   GMT, January 1, 1970; under VMS, it's 00:00:00 GMT of November 17,
   1858 (base date of the U.S. Naval Observatory's ephemerides).
   System time is measured in seconds or {tick}s past the epoch.
   Weird problems may ensue when the clock wraps around (see {wrap
   around}), which is not necessarily a rare event; on systems
   counting 10 ticks per second, a signed 32-bit count of ticks is
   good only for 6.8 years.  The 1-tick-per-second clock of UNIX is
   good only until January 18, 2038, assuming word lengths don't
   increase by then.  See also {wall time}.

:exec: /eg-zek'/ vt.,n.  1. [UNIX: from `execute'] Synonym for
   {chain}, derives from the `exec(2)' call.  2. [from
   `executive'] obs. The command interpreter for an {OS} (see
   {shell}); term esp. used around mainframes, and prob.
   derived from UNIVAC's archaic EXEC 2 and EXEC 8 operating systems.
   3. At IBM and VM/CMS shops, the equivalent of a shell command file
   (among VM/CMS users).

   The mainstream `exec' as an abbreviation for (human) executive is
   *not* used.  To a hacker, an `exec' is a always a program,
   never a person.

:feature key: n. The Macintosh key with the cloverleaf graphic on
   its keytop; sometimes referred to as `flower', `pretzel',
   `clover', `propeller', `beanie' (an apparent reference to the
   major feature of a propeller beanie), {splat}, or the `command
   key'.  The Mac's equivalent of an {ALT} key.  The proliferation
   of terms for this creature may illustrate one subtle peril of
   iconic interfaces.

   Many people have been mystified by the cloverleaf-like symbol that
   appears on the feature key.  Its oldest name is `cross of St.
   Hannes', but it occurs in pre-Christian Viking art as a decorative
   motif.  Throughout Scandinavia today the road agencies use it to
   mark sites of historical interest.  Many of these are old churches;
   hence, the Swedish idiom for the symbol is `kyrka', cognate to
   English `church' and Scots-dialect `kirk' but pronounced
   /shir'k*/ in modern Swedish.  This is in fact where Apple got the
   symbol; they give the translation "interesting feature"!

:FM: n. *Not* `Frequency Modulation'; abbreviation for `Fucking Manual',
   the back-formation of {RTFM}. Used to refer to the manual itself
   in the {RTFM}. "Have you seen the Networking FM lately?"

:foo: /foo/ 1. interj. Term of disgust.  2. Used very generally
   as a sample name for absolutely anything, esp. programs and files
   (esp. scratch files).  3. First on the standard list of
   {metasyntactic variable}s used in syntax examples.  See also
   {bar}, {baz}, {qux}, {quux}, {corge}, {grault},
   {garply}, {waldo}, {fred}, {plugh}, {xyzzy},
   {thud}.

   The etymology of hackish `foo' is obscure.  When used in
   connection with `bar' it is generally traced to the WWII-era Army
   slang acronym FUBAR (`Fucked Up Beyond All Recognition'), later
   bowdlerized to {foobar}.  (See also {FUBAR}).

   However, the use of the word `foo' itself has more complicated
   antecedents, including a long history in comic strips and cartoons.
   The old "Smokey Stover" comic strips by Bill Holman often
   included the word `FOO', in particular on license plates of cars;
   allegedly, `FOO' and `BAR' also occurred in Walt Kelly's
   "Pogo" strips.  In the 1938 cartoon "Daffy Doc", a very
   early version of Daffy Duck holds up a sign saying "SILENCE IS
   FOO!"; oddly, this seems to refer to some approving or positive
   affirmative use of foo.  It is even possible that hacker usage
   actually springs from `FOO, Lampoons and Parody', the title of
   a comic book first issued in September 1958; the byline read
   `C. Crumb' but this may well have been a sort-of pseudonym for
   noted weird-comix artist Robert Crumb.  The title FOO was featured
   in large letters on the front cover.

   An old-time member reports that in the 1959 `Dictionary of the
   TMRC Language', compiled at {TMRC} there was an entry that went
   something like this:

     FOO: The first syllable of the sacred chant phrase "FOO MANE PADME
     HUM."  Our first obligation is to keep the foo counters turning.

   For more about the legendary foo counters, see {TMRC}.  Almost
   the entire staff of what became the MIT AI LAB was involved with
   TMRC, and probably picked the word up there.

   Very probably, hackish `foo' had no single origin and derives
   through all these channels from Yiddish `feh' and/or English
   `fooey'.

:foo: /foo/ 1. interj. Term of disgust.  2. Used very generally
   as a sample name for absolutely anything, esp. programs and files
   (esp. scratch files).  3. First on the standard list of
   {metasyntactic variable}s used in syntax examples.  See also
   {bar}, {baz}, {qux}, {quux}, {corge}, {grault},
   {garply}, {waldo}, {fred}, {plugh}, {xyzzy},
   {thud}.

   The etymology of hackish `foo' is obscure.  When used in
   connection with `bar' it is generally traced to the WWII-era Army
   slang acronym FUBAR (`Fucked Up Beyond All Recognition'), later
   bowdlerized to {foobar}.  (See also {FUBAR}).

   However, the use of the word `foo' itself has more complicated
   antecedents, including a long history in comic strips and cartoons.
   The old "Smokey Stover" comic strips by Bill Holman often
   included the word `FOO', in particular on license plates of cars;
   allegedly, `FOO' and `BAR' also occurred in Walt Kelly's
   "Pogo" strips.  In the 1938 cartoon "Daffy Doc", a very
   early version of Daffy Duck holds up a sign saying "SILENCE IS
   FOO!"; oddly, this seems to refer to some approving or positive
   affirmative use of foo.  It is even possible that hacker usage
   actually springs from `FOO, Lampoons and Parody', the title of
   a comic book first issued in September 1958; the byline read
   `C. Crumb' but this may well have been a sort-of pseudonym for
   noted weird-comix artist Robert Crumb.  The title FOO was featured
   in large letters on the front cover.

   An old-time member reports that in the 1959 `Dictionary of the
   TMRC Language', compiled at {TMRC} there was an entry that went
   something like this:

     FOO: The first syllable of the sacred chant phrase "FOO MANE PADME
     HUM."  Our first obligation is to keep the foo counters turning.

   For more about the legendary foo counters, see {TMRC}.  Almost
   the entire staff of what became the MIT AI LAB was involved with
   TMRC, and probably picked the word up there.

   Very probably, hackish `foo' had no single origin and derives
   through all these channels from Yiddish `feh' and/or English
   `fooey'.

:forked: [UNIX; prob. influenced by a mainstream expletive] adj.
   Terminally slow, or dead.  Originated when one system was slowed to
   a snail's pace by an inadvertent {fork bomb}.

:fortune cookie: [WAITS, via UNIX] n. A random quote, item of
   trivia, joke, or maxim printed to the user's tty at login time or
   (less commonly) at logout time.  Items from this lexicon have often
   been used as fortune cookies.  See {cookie file}.

:frob: /frob/ 1. n. [MIT] The {TMRC} definition was "FROB = a
   protruding arm or trunnion"; by metaphoric extension, a `frob'
   is any random small thing; an object that you can comfortably hold
   in one hand; something you can frob.  See {frobnitz}.  2. vt.
   Abbreviated form of {frobnicate}.  3. [from the {MUD} world]
   A command on some MUDs that changes a player's
   experience level (this can be used to make wizards); also, to
   request {wizard} privileges on the `professional courtesy'
   grounds that one is a wizard elsewhere.  The command is actually
   `frobnicate' but is universally abbreviated to the shorter form.

:frobnitz: /frob'nits/, pl. `frobnitzem' /frob'nit-zm/ or
   `frobni' /frob'ni:/ [TMRC] n. An unspecified physical object, a
   widget.  Also refers to electronic black boxes.  This rare form is
   usually abbreviated to `frotz', or more commonly to {frob}.
   Also used are `frobnule' (/frob'n[y]ool/) and `frobule'
   (/frob'yool/).  Starting perhaps in 1979, `frobozz'
   /fr*-boz'/ (plural: `frobbotzim' /fr*-bot'zm/) has also
   become very popular, largely through its exposure as a name via
   {Zork}.  These can also be applied to nonphysical objects, such
   as data structures.

   Pete Samson, compiler of the {TMRC} lexicon, adds, "Under the
   TMRC [railroad] layout were many storage boxes, managed (in 1958)
   by David R. Sawyer.  Several had fanciful designations written on
   them, such as `Frobnitz Coil Oil'.  Perhaps DRS intended Frobnitz
   to be a proper name, but the name was quickly taken for the
   thing".  This was almost certainly the origin of the term.

:gumby: /guhm'bee/ [from a class of Monty Python characters,
   poss. with some influence from the 1960s claymation character] n.
   An act of minor but conspicuous stupidity, often in `gumby
   maneuver' or `pull a gumby'.

:hacker: [originally, someone who makes furniture with an axe] n.
   1. A person who enjoys exploring the details of programmable
   systems and how to stretch their capabilities, as opposed to most
   users, who prefer to learn only the minimum necessary.  2. One who
   programs enthusiastically (even obsessively) or who enjoys
   programming rather than just theorizing about programming.  3. A
   person capable of appreciating {hack value}.  4. A person who is
   good at programming quickly.  5. An expert at a particular program,
   or one who frequently does work using it or on it; as in `a UNIX
   hacker'.  (Definitions 1 through 5 are correlated, and people who
   fit them congregate.)  6. An expert or enthusiast of any kind.  One
   might be an astronomy hacker, for example.  7. One who enjoys the
   intellectual challenge of creatively overcoming or circumventing
   limitations.  8. [deprecated] A malicious meddler who tries to
   discover sensitive information by poking around.  Hence `password
   hacker', `network hacker'.  See {cracker}.

   The term `hacker' also tends to connote membership in the global
   community defined by the net (see {network, the} and
   {Internet address}).  It also implies that the person described
   is seen to subscribe to some version of the hacker ethic (see
   {hacker ethic, the}.

   It is better to be described as a hacker by others than to describe
   oneself that way.  Hackers consider themselves something of an
   elite (a meritocracy based on ability), though one to which new
   members are gladly welcome.  There is thus a certain ego
   satisfaction to be had in identifying yourself as a hacker (but if
   you claim to be one and are not, you'll quickly be labeled
   {bogus}).  See also {wannabee}.  xreffed under `hack'.

:hairy: adj. 1. Annoyingly complicated.  "{DWIM} is incredibly
   hairy."  2. Incomprehensible.  "{DWIM} is incredibly hairy."
   3. Of people, high-powered, authoritative, rare, expert, and/or
   incomprehensible.  Hard to explain except in context: "He knows
   this hairy lawyer who says there's nothing to worry about."  See
   also {hirsute}.

   The adjective `long-haired' is well-attested to have been in
   slang use among scientists and engineers during the early 1950s; it
   was equivalent to modern `hairy' senses 1 and 2, and was very
   likely ancestral to the hackish use.  In fact the noun
   `long-hair' was at the time used to describe a person satisfying
   sense 3.  Both senses probably passed out of use when long hair
   was adopted as a signature trait by the 1960s counterculture,
   leaving hackish `hairy' as a sort of stunted mutant relic.

:kluge: /klooj/ [from the German `klug', clever] 1. n.  A Rube
   Goldberg (or Heath Robinson) device, whether in hardware or
   software.  (A long-ago `Datamation' article by Jackson Granholme
   said: "An ill-assorted collection of poorly matching parts,
   forming a distressing whole.")  2. n. A clever programming trick
   intended to solve a particular nasty case in an expedient, if not
   clear, manner.  Often used to repair bugs.  Often involves
   {ad-hockery} and verges on being a {crock}.  In fact, the
   TMRC Dictionary defined `kludge' as "a crock that works".  3. n.
   Something that works for the wrong reason.  4. vt. To insert a
   kluge into a program.  "I've kluged this routine to get around
   that weird bug, but there's probably a better way."  5. [WPI] n. A
   feature that is implemented in a {rude} manner.

   Nowadays this term is often encountered in the variant spelling
   `kludge'.  Reports from {old fart}s are consistent that
   `kluge' was the original spelling, reported around computers as
   far back as the mid-1950s and, at that time, used exclusively of
   *hardware* kluges.  In 1947, the `New York Folklore
   Quarterly' reported a classic shaggy-dog story `Murgatroyd the
   Kluge Maker' then current in the Armed Forces, in which a `kluge'
   was a complex and puzzling artifact with a trivial function.

   The variant `kludge' was apparently popularized by the
   {Datamation} article mentioned above; it was titled "How
   to Design a Kludge" (February 1962, pages 30 and 31).  Some people
   who encountered the word first in print or on-line jumped to the
   reasonable but incorrect conclusion that the word should be
   pronounced /kluhj/ (rhyming with `sludge').  The result of this
   tangled history is a mess; in 1991, many (perhaps even most)
   hackers pronounce the word correctly as /klooj/ but spell it
   incorrectly as `kludge' (compare the pronunciation drift of
   {mung}).  Some observers consider this appropriate in view of
   its meaning.

:kremvax: /krem-vaks/ [from the then large number of {USENET}
   {VAXen} with names of the form foovax] n. Originally, a
   fictitious USENET site at the Kremlin, announced on April 1, 1984
   in a posting ostensibly originated there by Soviet leader
   Konstantin Chernenko.  The posting was actually forged by Piet
   Beertema as an April Fool's joke.  Other fictitious sites mentioned
   in the hoax were moskvax and {kgbvax}, which now seems to be
   the one by which it is remembered.  This was probably the funniest
   of the many April Fool's forgeries perpetrated on USENET (which has
   negligible security against them), because the notion that USENET
   might ever penetrate the Iron Curtain seemed so totally absurd at
   the time.

   In fact, it was only six years later that the first genuine site in
   Moscow, demos.su, joined USENET.  Some readers needed
   convincing that the postings from it weren't just another prank.
   Vadim Antonov, senior programmer at Demos and the major poster from
   there up to mid-1991, was quite aware of all this, referred to it
   frequently in his own postings, and at one point twitted some
   credulous readers by blandly asserting that he *was* a
   hoax!

   Eventually he even arranged to have the domain's gateway site
   *named* kremvax, thus neatly turning fiction into truth
   and demonstrating that the hackish sense of humor transcends
   cultural barriers.  [Mr. Antonov also contributed the
   Russian-language material for this lexicon. --- ESR]

   In an even more ironic historical footnote, kremvax became an
   electronic center of the anti-communist resistance during the
   bungled hard-line coup of August 1991.  During those three days the
   Soviet UUCP network centered on kremvax became the only
   trustworthy news source for many places within the USSR.  Though
   the sysops were concentrating on internal communications,
   cross-border postings included immediate transliterations of Boris
   Yeltsin's decrees condemning the coup and eyewitness reports of the
   demonstrations in Moscow's streets.  In those hours, years of
   speculation that totalitarianism would prove unable to maintain its
   grip on politically-loaded information in the age of computer
   networking proved out --- and the original kremvax joke became
   a reality as Yeltsin and the new Russian revolutionaries of
   `glasnost' and `perestroika' made kremvax one of the
   timeliest means of their outreach to the West.

:meta bit: n. The top bit of an 8-bit character, which is on in
   character values 128--255.  Also called {high bit}, {alt bit},
   or {hobbit}.  Some terminals and consoles (see {space-cadet
   keyboard}) have a META shift key.  Others (including,
   *mirabile dictu*, keyboards on IBM PC-class machines) have an
   ALT key.  See also {bucky bits}.

   Historical note: although in modern usage shaped by a universe of
   8-bit bytes the meta bit is invariably hex 80 (octal 0200), things
   were different on earlier machines with 36-bit words and 9-bit
   bytes.  The MIT and Stanford keyboards (see {space-cadet
   keyboard}) generated hex 100 (octal 400) from their meta keys.

:microtape: /mi:'kroh-tayp/ n. Occasionally used to mean a
   DECtape, as opposed to a {macrotape}.  A DECtape is a small
   reel, about 4 inches in diameter, of magnetic tape about an inch
   wide.  Unlike drivers for today's {macrotape}s, microtape
   drivers allow random access to the data, and therefore could be
   used to support file systems and even for swapping (this was
   generally done purely for {hack value}, as they were far too
   slow for practical use).  In their heyday they were used in pretty
   much the same ways one would now use a floppy disk: as a small,
   portable way to save and transport files and programs.  Apparently
   the term `microtape' was actually the official term used within
   DEC for these tapes until someone coined the word `DECtape',
   which, of course, sounded sexier to the {marketroid}s; another
   version of the story holds that someone discovered a conflict with
   another company's `microtape' trademark.

:mode: n. A general state, usually used with an adjective
   describing the state.  Use of the word `mode' rather than
   `state' implies that the state is extended over time, and
   probably also that some activity characteristic of that state is
   being carried out. "No time to hack; I'm in thesis mode."  In its
   jargon sense, `mode' is most often attributed to people, though
   it is sometimes applied to programs and inanimate objects. In
   particular, see {hack mode}, {day mode}, {night mode},
   {demo mode}, {fireworks mode}, and {yoyo mode}; also
   {talk mode}.

   One also often hears the verbs `enable' and `disable' used in
   connection with jargon modes.  Thus, for example, a sillier way of
   saying "I'm going to crash" is "I'm going to enable crash mode
   now".  One might also hear a request to "disable flame mode,
   please".

   In a usage much closer to techspeak, a mode is a special state
   which certain user interfaces must pass into in order to perform
   certain functions.  For example, in order to insert characters into a
   document in the UNIX editor `vi', one must type the "i" key,
   which invokes the "Insert" command.  The effect of this command
   is to put vi into "insert mode", in which typing the "i" key
   has a quite different effect (to wit, it inserts an "i" into the
   document).  One must then hit another special key, "ESC", in
   order to leave "insert mode".  Nowadays, moded interfaces are
   generally considered {losing}, but survive in quite a few
   widely-used tools built in less enlightened times.

:mudhead: n. Commonly used to refer to a {MUD} player who eats,
   sleeps, and breathes MUD.  Mudheads have been known to fail their
   degrees, drop out, etc., with the consolation, however, that they
   made wizard level.  When encountered in person, on a MUD, or in a
   chat system, all a mudhead will talk about is three topics: the
   tactic, character, or wizard that is supposedly always unfairly
   stopping him/her from becoming a wizard or beating a favorite MUD;
   why the specific game he/she has experience with is so much better
   than any other, and the MUD he or she is writing or going to write
   because his/her design ideas are so much better than in any
   existing MUD.  See also {wannabee}.

:mumble: interj. 1. Said when the correct response is too
   complicated to enunciate, or the speaker has not thought it out.
   Often prefaces a longer answer, or indicates a general reluctance
   to get into a long discussion.  "Don't you think that we could
   improve LISP performance by using a hybrid reference-count
   transaction garbage collector, if the cache is big enough and there
   are some extra cache bits for the microcode to use?"  "Well,
   mumble ... I'll have to think about it."  2. Sometimes used as
   an expression of disagreement.  "I think we should buy a
   {VAX}."  "Mumble!"  Common variant: `mumble frotz' (see
   {frotz}; interestingly, one does not say `mumble frobnitz'
   even though `frotz' is short for `frobnitz').  3. Yet another
   {metasyntactic variable}, like {foo}.  4. When used as a question
   ("Mumble?") means "I didn't understand you".  5. Sometimes used
   in `public' contexts on-line as a placefiller for things one is
   barred from giving details about.  For example, a poster with
   pre-released hardware in his machine might say "Yup, my machine
   now has an extra 16M of memory, thanks to the card I'm testing for
   Mumbleco." 6. A conversational wild card used to designate
   something one doesn't want to bother spelling out, but which can be
   {glark}ed from context.  Compare {blurgle}.  7. [XEROX PARC]
   A colloquialism used to suggest that further discussion would be
   fruitless.

:mumble: interj. 1. Said when the correct response is too
   complicated to enunciate, or the speaker has not thought it out.
   Often prefaces a longer answer, or indicates a general reluctance
   to get into a long discussion.  "Don't you think that we could
   improve LISP performance by using a hybrid reference-count
   transaction garbage collector, if the cache is big enough and there
   are some extra cache bits for the microcode to use?"  "Well,
   mumble ... I'll have to think about it."  2. Sometimes used as
   an expression of disagreement.  "I think we should buy a
   {VAX}."  "Mumble!"  Common variant: `mumble frotz' (see
   {frotz}; interestingly, one does not say `mumble frobnitz'
   even though `frotz' is short for `frobnitz').  3. Yet another
   {metasyntactic variable}, like {foo}.  4. When used as a question
   ("Mumble?") means "I didn't understand you".  5. Sometimes used
   in `public' contexts on-line as a placefiller for things one is
   barred from giving details about.  For example, a poster with
   pre-released hardware in his machine might say "Yup, my machine
   now has an extra 16M of memory, thanks to the card I'm testing for
   Mumbleco." 6. A conversational wild card used to designate
   something one doesn't want to bother spelling out, but which can be
   {glark}ed from context.  Compare {blurgle}.  7. [XEROX PARC]
   A colloquialism used to suggest that further discussion would be
   fruitless.

:mung: /muhng/ alt. `munge' /muhnj/ [in 1960 at MIT, `Mash
   Until No Good'; sometime after that the derivation from the
   {{recursive acronym}} `Mung Until No Good' became standard] vt.
   1. To make changes to a file, esp. large-scale and irrevocable
   changes.  See {BLT}.  2. To destroy, usually accidentally,
   occasionally maliciously.  The system only mungs things
   maliciously; this is a consequence of {Finagle's Law}.  See
   {scribble}, {mangle}, {trash}, {nuke}.  Reports from
   {USENET} suggest that the pronunciation /muhnj/ is now usual
   in speech, but the spelling `mung' is still common in program
   comments (compare the widespread confusion over the proper spelling
   of {kluge}).  3. The kind of beans of which the sprouts are used
   in Chinese food.  (That's their real name!  Mung beans!  Really!)

   Like many early hacker terms, this one seems to have originated at
   {TMRC}; it was already in use there in 1958.  Peter Samson
   (compiler of the TMRC lexicon) thinks it may originally have been
   onomatopoeic for the sound of a relay spring (contact) being
   twanged.

:netburp: [IRC] n.  When {netlag} gets really bad, and delays
   between servers exceed a certain threshhold, the {IRC} network
   effectively becomes partitioned for a period of time, and large
   numbers of people seem to be signing off at the same time and then
   signing back on again when things get better.  An instance of this
   is called a `netburp' (or, sometimes, {netsplit}).
   
:NP-: /N-P/ pref. Extremely.  Used to modify adjectives
   describing a level or quality of difficulty; the connotation is
   often `more so than it should be' (NP-complete problems all seem
   to be very hard, but so far no one has found a good a priori
   reason that they should be.)  "Coding a BitBlt implementation to
   perform correctly in every case is NP-annoying."  This is
   generalized from the computer-science terms `NP-hard' and
   `NP-complete'.  NP is the set of Nondeterministic-Polynomial
   algorithms, those that can be completed by a nondeterministic
   Turing machine in an amount of time that is a polynomial function
   of the size of the input; a solution for one NP-complete problem
   would solve all the others.  Note, however, that the NP- prefix is,
   from a complexity theorist's point of view, the wrong part of
   `NP-complete' to connote extreme difficulty; it is the completeness,
   not the NP-ness, that puts any problem it describes in the
   `hard' category.

:Pascal:: n. An Algol-descended language designed by Niklaus Wirth
   on the CDC 6600 around 1967--68 as an instructional tool for
   elementary programming.  This language, designed primarily to keep
   students from shooting themselves in the foot and thus extremely
   restrictive from a general-purpose-programming point of view, was
   later promoted as a general-purpose tool and, in fact, became the
   ancestor of a large family of languages including Modula-2 and
   {{Ada}} (see also {bondage-and-discipline language}).  The
   hackish point of view on Pascal was probably best summed up by a
   devastating (and, in its deadpan way, screamingly funny) 1981 paper
   by Brian Kernighan (of {K&R} fame) entitled "Why Pascal is
   Not My Favorite Programming Language", which was turned down by the
   technical journals but circulated widely via photocopies.  It was
   eventually published in "Comparing and Assessing Programming
   Languages", edited by Alan Feuer and Narain Gehani (Prentice-Hall,
   1984).  Part of his discussion is worth repeating here, because its
   criticisms are still apposite to Pascal itself after ten years of
   improvement and could also stand as an indictment of many other
   bondage-and-discipline languages.  At the end of a summary of the
   case against Pascal, Kernighan wrote:

     9. There is no escape

     This last point is perhaps the most important.  The language is
     inadequate but circumscribed, because there is no way to escape its
     limitations.  There are no casts to disable the type-checking when
     necessary.  There is no way to replace the defective run-time
     environment with a sensible one, unless one controls the compiler
     that defines the "standard procedures".  The language is closed.

     People who use Pascal for serious programming fall into a fatal
     trap.  Because the language is impotent, it must be extended.  But
     each group extends Pascal in its own direction, to make it look
     like whatever language they really want.  Extensions for separate
     compilation, FORTRAN-like COMMON, string data types, internal
     static variables, initialization, octal numbers, bit operators,
     etc., all add to the utility of the language for one group but
     destroy its portability to others.

     I feel that it is a mistake to use Pascal for anything much beyond
     its original target.  In its pure form, Pascal is a toy language,
     suitable for teaching but not for real programming.

   Pascal has since been almost entirely displaced (by {C}) from the
   niches it had acquired in serious applications and systems
   programming, but retains some popularity as a hobbyist language in
   the MS-DOS and Macintosh worlds.

:pdl: /pid'l/ or /puhd'l/ [abbreviation for `Push Down List'] 1. In
   ITS days, the preferred MITism for {stack}.  See {overflow
   pdl}.  2. Dave Lebling, one of the co-authors of {Zork}; (his
   {network address} on the ITS machines was at one time pdl@dms).
   3. `Program Design Language'.  Any of a large class of formal and
   profoundly useless pseudo-languages in which {management} forces
   one to design programs.  {Management} often expects it to be
   maintained in parallel with the code.  See also {{flowchart}}.
   4. To design using a program design language.  "I've been pdling
   so long my eyes won't focus beyond 2 feet."

:ping: [from the TCP/IP acronym `Packet INternet Groper', prob.
   originally contrived to match the submariners' term for a sonar
   pulse] 1. n.  Slang term for a small network message (ICMP ECHO)
   sent by a computer to check for the presence and aliveness of
   another.  Occasionally used as a phone greeting.  See {ACK},
   also {ENQ}.  2. vt. To verify the presence of.  3. vt. To get
   the attention of.  From the UNIX command `ping(1)' that sends
   an ICMP ECHO packet to another host.  4. vt. To send a message to
   all members of a {mailing list} requesting an {ACK} (in order
   to verify that everybody's addresses are reachable).  "We haven't
   heard much of anything from Geoff, but he did respond with an ACK
   both times I pinged jargon-friends."  5. n. A quantum packet of
   happiness.  People who are very happy tend to exude pings;
   furthermore, one can intentionally create pings and aim them at a
   needy party (e.g. a depressed person).  This sense of ping may
   appear as an exclamation; "Ping!" (I'm happy; I am emitting a
   quantum of happiness; I have been struck by a quantum of
   happiness). The form "pingfulness", which is used to describe
   people who exude pings, also occurs.  (In the standard abuse of
   language, "pingfulness" can also be used as an exclamation, in
   which case it's a much stronger exclamation than just "ping"!).
   Oppose {blargh}.

   The funniest use of `ping' to date was described in January 1991 by
   Steve Hayman on the USENET group comp.sys.next.  He was trying
   to isolate a faulty cable segment on a TCP/IP Ethernet hooked up to
   a NeXT machine, and got tired of having to run back to his console
   after each cabling tweak to see if the ping packets were getting
   through.  So he used the sound-recording feature on the NeXT, then
   wrote a script that repeatedly invoked `ping(8)', listened for
   an echo, and played back the recording on each returned packet.
   Result?  A program that caused the machine to repeat, over and
   over, "Ping ... ping ... ping ..." as long as the
   network was up.  He turned the volume to maximum, ferreted through
   the building with one ear cocked, and found a faulty tee connector
   in no time.

:plumbing: [UNIX] n. Term used for {shell} code, so called
   because of the prevalence of `pipelines' that feed the output of
   one program to the input of another.  Under UNIX, user utilities
   can often be implemented or at least prototyped by a suitable
   collection of pipelines and temp-file grinding encapsulated in a
   shell script; this is much less effort than writing C every time,
   and the capability is considered one of UNIX's major winning
   features.  A few other OSs such as IBM's VM/CMS support similar
   facilities.  Esp. used in the construction `hairy plumbing'
   (see {hairy}).  "You can kluge together a basic spell-checker
   out of `sort(1)', `comm(1)', and `tr(1)' with a
   little plumbing." See also {tee}.

:Purple Book: n. 1. The `System V Interface Definition'.  The covers
   of the first editions were an amazingly nauseating shade of
   off-lavender.  2. Syn. {Wizard Book}. See also {{book titles}}.

:quantifiers:: In techspeak and jargon, the standard metric
   prefixes used in the SI (Syst`eme International) conventions for
   scientific measurement have dual uses.  With units of time or
   things that come in powers of 10, such as money, they retain their
   usual meanings of multiplication by powers of 1000 = 10^3.
   But when used with bytes or other things that naturally come in
   powers of 2, they usually denote multiplication by powers of
   1024 = 2^(10).  Here are the SI magnifying prefixes:

     prefix  decimal  binary
     kilo-   1000^1   1024^1 = 2^10 = 1,024 
     mega-   1000^2   1024^2 = 2^20 = 1,048,576 
     giga-   1000^3   1024^3 = 2^30 = 1,073,741,824 
     tera-   1000^4   1024^4 = 2^40 = 1,099,511,627,776 
     peta-   1000^5   1024^5 = 2^50 = 1,125,899,906,842,624 
     exa-    1000^6   1024^6 = 2^60 = 1,152,921,504,606,846,976 
     zetta-  1000^7   1024^7 = 2^70 = 1,180,591,620,717,411,303,424 
     yotta-  1000^8   1024^8 = 2^80 = 1,208,925,819,614,629,174,706,176 

   Here are the SI fractional prefixes:

     *prefix  decimal     jargon usage*
     milli-  1000^-1     (seldom used in jargon)
     micro-  1000^-2     small or human-scale (see {micro-})
     nano-   1000^-3     even smaller (see {nano-})
     pico-   1000^-4     even smaller yet (see {pico-})
     femto-  1000^-5     (not used in jargon---yet)
     atto-   1000^-6     (not used in jargon---yet)
     zepto-     1000^-7     (not used in jargon---yet)
     yocto-     1000^-8     (not used in jargon---yet)

   The prefixes zetta-, yotta-, zepto-, and yocto- have been included
   in these tables purely for completeness and giggle value; they were
   adopted in 1990 by the `19th Conference Generale des Poids et
   Mesures'.  The binary peta- and exa- loadings, though well
   established, are not in jargon use either --- yet.  The prefix
   milli-, denoting multiplication by 1000^(-1), has always
   been rare (there is, however, a standard joke about the
   `millihelen' --- notionally, the amount of beauty required to
   launch one ship).  See the entries on {micro-}, {pico-}, and
   {nano-} for more information on connotative jargon use of these
   terms.  `Femto' and `atto' (which, interestingly, derive not
   from Greek but from Danish) have not yet acquired jargon loadings,
   though it is easy to predict what those will be once computing
   technology enters the required realms of magnitude (however, see
   {attoparsec}).

   There are, of course, some standard unit prefixes for powers of
   10.  In the following table, the `prefix' column is the
   international standard suffix for the appropriate power of ten; the
   `binary' column lists jargon abbreviations and words for the
   corresponding power of 2.  The B-suffixed forms are commonly used
   for byte quantities; the words `meg' and `gig' are nouns which may
   (but do not always) pluralize with `s'.

     prefix   decimal   binary       pronunciation
     kilo-       k      K, KB,       /kay/
     mega-       M      M, MB, meg   /meg/
     giga-       G      G, GB, gig   /gig/,/jig/

   Confusingly, hackers often use K as though it were a suffix or
   numeric multiplier rather than a prefix; thus "2K dollars".  This
   is also true (though less commonly) of G and M.

   Note that the formal SI metric prefix for 1000 is `k'; some use
   this strictly, reserving `K' for multiplication by 1024 (KB is
   `kilobytes').

   K, M, and G used alone refer to quantities of bytes; thus, 64G is
   64 gigabytes and `a K' is a kilobyte (compare mainstream use of
   `a G' as short for `a grand', that is, $1000).  Whether one
   pronounces `gig' with hard or soft `g' depends on what one thinks
   the proper pronunciation of `giga-' is.

   Confusing 1000 and 1024 (or other powers of 2 and 10 close in
   magnitude) --- for example, describing a memory in units of
   500K or 524K instead of 512K --- is a sure sign of the
   {marketroid}.

:randomness: n. 1. An inexplicable misfeature; gratuitous
   inelegance.  2. A {hack} or {crock} that depends on a complex
   combination of coincidences (or, possibly, the combination upon
   which the crock depends for its accidental failure to malfunction).
   "This hack can output characters 40--57 by putting the character
   in the four-bit accumulator field of an XCT and then extracting
   six bits --- the low 2 bits of the XCT opcode are the right
   thing." "What randomness!"  3. Of people, synonymous with
   `flakiness'. The connotation is that the person so described is
   behaving weirdly, incompetently, or inappropriately for reasons
   which are (a) too tiresome to bother inquiring into, (b) are
   probably as inscrutable as quantum phenomena anyway, and (c) are
   likely to pass with time. "Maybe he has a real complaint, or maybe
   it's just randomness.  See if he calls back."

:rococo: adj. {Baroque} in the extreme.  Used to imply that a
   program has become so encrusted with the software equivalent of
   gold leaf and curlicues that they have completely swamped the
   underlying design.  Called after the later and more extreme forms
   of Baroque architecture and decoration prevalent during the
   mid-1700s in Europe.  Alan Perlis said: "Every program eventually
   becomes rococo, and then rubble."  Compare {critical
   mass}.

:RTFM: /R-T-F-M/ [UNIX] imp. Acronym for `Read The Fucking
   Manual'.  1. Used by {guru}s to brush off questions they
   consider trivial or annoying.  Compare {Don't do that, then!}
   2. Used when reporting a problem to indicate that you aren't just
   asking out of {randomness}.  "No, I can't figure out how to
   interface UNIX to my toaster, and yes, I have RTFM."  Unlike
   sense 1, this use is considered polite.  See also {FM},
   {RTFAQ}, {RTFB}, {RTFS}, {RTM}, all of which mutated
   from RTFM, and compare {UTSL}.

:rude: [WPI] adj. 1. (of a program) Badly written.  2. Functionally
   poor, e.g., a program that is very difficult to use because of
   gratuitously poor (random?) design decisions.  Oppose {cuspy}.
   3. Anything that manipulates a shared resource without regard for
   its other users in such a way as to cause a (non-fatal) problem is
   said to be `rude'.  Examples: programs that change tty modes
   without resetting them on exit, or windowing programs that keep
   forcing themselves to the top of the window stack.  Compare
   {all-elbows}.

:saga: [WPI] n. A cuspy but bogus raving story about N random
   broken people.

   Here is a classic example of the saga form, as told by Guy L.
   Steele:

     Jon L. White (login name JONL) and I (GLS) were office mates at MIT
     for many years.  One April, we both flew from Boston to California
     for a week on research business, to consult face-to-face with some
     people at Stanford, particularly our mutual friend Richard P.
     Gabriel (RPG; see {Gabriel}).

     RPG picked us up at the San Francisco airport and drove us back to
     Palo Alto (going {logical} south on route 101, parallel to {El
     Camino Bignum}).  Palo Alto is adjacent to Stanford University and
     about 40 miles south of San Francisco.  We ate at The Good Earth, a
     `health food' restaurant, very popular, the sort whose milkshakes
     all contain honey and protein powder.  JONL ordered such a shake
     --- the waitress claimed the flavor of the day was "lalaberry".  I
     still have no idea what that might be, but it became a running
     joke.  It was the color of raspberry, and JONL said it tasted
     rather bitter.  I ate a better tostada there than I have ever had
     in a Mexican restaurant.

     After this we went to the local Uncle Gaylord's Old Fashioned Ice
     Cream Parlor.  They make ice cream fresh daily, in a variety of
     intriguing flavors.  It's a chain, and they have a slogan: "If you
     don't live near an Uncle Gaylord's --- MOVE!"  Also, Uncle Gaylord
     (a real person) wages a constant battle to force big-name ice cream
     makers to print their ingredients on the package (like air and
     plastic and other non-natural garbage).  JONL and I had first
     discovered Uncle Gaylord's the previous August, when we had flown
     to a computer-science conference in Berkeley, California, the first
     time either of us had been on the West Coast.  When not in the
     conference sessions, we had spent our time wandering the length of
     Telegraph Avenue, which (like Harvard Square in Cambridge) was
     lined with picturesque street vendors and interesting little shops.
     On that street we discovered Uncle Gaylord's Berkeley store.  The
     ice cream there was very good.  During that August visit JONL went
     absolutely bananas (so to speak) over one particular flavor, ginger
     honey.

     Therefore, after eating at The Good Earth --- indeed, after every
     lunch and dinner and before bed during our April visit --- a trip
     to Uncle Gaylord's (the one in Palo Alto) was mandatory.  We had
     arrived on a Wednesday, and by Thursday evening we had been there
     at least four times.  Each time, JONL would get ginger honey ice
     cream, and proclaim to all bystanders that "Ginger was the spice
     that drove the Europeans mad!  That's why they sought a route to
     the East!  They used it to preserve their otherwise off-taste
     meat."  After the third or fourth repetition RPG and I were getting
     a little tired of this spiel, and began to paraphrase him: "Wow!
     Ginger!  The spice that makes rotten meat taste good!"  "Say!  Why
     don't we find some dog that's been run over and sat in the sun for
     a week and put some *ginger* on it for dinner?!"  "Right!  With a
     lalaberry shake!"  And so on.  This failed to faze JONL; he took it
     in good humor, as long as we kept returning to Uncle Gaylord's.  He
     loves ginger honey ice cream.

     Now RPG and his then-wife KBT (Kathy Tracy) were putting us up
     (putting up with us?) in their home for our visit, so to thank them
     JONL and I took them out to a nice French restaurant of their
     choosing.  I unadventurously chose the filet mignon, and KBT had je
     ne sais quoi du jour, but RPG and JONL had lapin (rabbit).
     (Waitress: "Oui, we have fresh rabbit, fresh today."  RPG: "Well,
     JONL, I guess we won't need any *ginger*!")

     We finished the meal late, about 11 P.M., which is 2 A.M Boston
     time, so JONL and I were rather droopy.  But it wasn't yet
     midnight.  Off to Uncle Gaylord's!

     Now the French restaurant was in Redwood City, north of Palo Alto.
     In leaving Redwood City, we somehow got onto route 101 going north
     instead of south.  JONL and I wouldn't have known the difference
     had RPG not mentioned it.  We still knew very little of the local
     geography.  I did figure out, however, that we were headed in the
     direction of Berkeley, and half-jokingly suggested that we continue
     north and go to Uncle Gaylord's in Berkeley.

     RPG said "Fine!" and we drove on for a while and talked.  I was
     drowsy, and JONL actually dropped off to sleep for 5 minutes.  When
     he awoke, RPG said, "Gee, JONL, you must have slept all the way
     over the bridge!", referring to the one spanning San Francisco Bay.
     Just then we came to a sign that said "University Avenue".  I
     mumbled something about working our way over to Telegraph Avenue;
     RPG said "Right!" and maneuvered some more.  Eventually we pulled
     up in front of an Uncle Gaylord's.

     Now, I hadn't really been paying attention because I was so sleepy,
     and I didn't really understand what was happening until RPG let me
     in on it a few moments later, but I was just alert enough to notice
     that we had somehow come to the Palo Alto Uncle Gaylord's after
     all.

     JONL noticed the resemblance to the Palo Alto store, but hadn't
     caught on.  (The place is lit with red and yellow lights at night,
     and looks much different from the way it does in daylight.)  He
     said, "This isn't the Uncle Gaylord's I went to in Berkeley!  It
     looked like a barn!  But this place looks *just like* the one back
     in Palo Alto!"

     RPG deadpanned, "Well, this is the one *I* always come to when I'm
     in Berkeley.  They've got two in San Francisco, too.  Remember,
     they're a chain."

     JONL accepted this bit of wisdom.  And he was not totally ignorant
     --- he knew perfectly well that University Avenue was in Berkeley,
     not far from Telegraph Avenue.  What he didn't know was that there
     is a completely different University Avenue in Palo Alto.

     JONL went up to the counter and asked for ginger honey.  The guy at
     the counter asked whether JONL would like to taste it first,
     evidently their standard procedure with that flavor, as not too
     many people like it.

     JONL said, "I'm sure I like it.  Just give me a cone."  The guy
     behind the counter insisted that JONL try just a taste first.
     "Some people think it tastes like soap."  JONL insisted, "Look, I
     *love* ginger.  I eat Chinese food.  I eat raw ginger roots.  I
     already went through this hassle with the guy back in Palo Alto.  I
     *know* I like that flavor!"

     At the words "back in Palo Alto" the guy behind the counter got a
     very strange look on his face, but said nothing.  KBT caught his
     eye and winked.  Through my stupor I still hadn't quite grasped
     what was going on, and thought RPG was rolling on the floor
     laughing and clutching his stomach just because JONL had launched
     into his spiel ("makes rotten meat a dish for princes") for the
     forty-third time.  At this point, RPG clued me in fully.

     RPG, KBT, and I retreated to a table, trying to stifle our
     chuckles.  JONL remained at the counter, talking about ice cream
     with the guy b.t.c., comparing Uncle Gaylord's to other ice cream
     shops and generally having a good old time.

     At length the g.b.t.c. said, "How's the ginger honey?"  JONL said,
     "Fine!  I wonder what exactly is in it?"  Now Uncle Gaylord
     publishes all his recipes and even teaches classes on how to make
     his ice cream at home.  So the g.b.t.c. got out the recipe, and he
     and JONL pored over it for a while.  But the g.b.t.c. could contain
     his curiosity no longer, and asked again, "You really like that
     stuff, huh?"  JONL said, "Yeah, I've been eating it constantly back
     in Palo Alto for the past two days.  In fact, I think this batch is
     about as good as the cones I got back in Palo Alto!"

     G.b.t.c. looked him straight in the eye and said, "You're *in* Palo
     Alto!"

     JONL turned slowly around, and saw the three of us collapse in a
     fit of giggles.  He clapped a hand to his forehead and exclaimed,
     "I've been hacked!"

   [My spies on the West Coast inform me that there is a close relative
   of the strawberry found out there called an `olalliberry' --- ESR]

   [Ironic footnote: it appears that the {meme} about ginger vs.
   rotting meat may be an urban legend.  It's not borne out by an
   examination of medieval recipes or period purchase records for
   spices, and appears full-blown in the works of Samuel Pegge, a
   gourmand and notorious flake case who originated numerous food
   myths. --- ESR]

:security through obscurity: n. A name applied by hackers to most
   OS vendors' favorite way of coping with security holes --- namely,
   ignoring them and not documenting them and trusting that nobody
   will find out about them and that people who do find out about them
   won't exploit them.  This never works for long and occasionally
   sets the world up for debacles like the {RTM} worm of 1988, but
   once the brief moments of panic created by such events subside most
   vendors are all too willing to turn over and go back to sleep.
   After all, actually fixing the bugs would siphon off the resources
   needed to implement the next user-interface frill on marketing's
   wish list --- and besides, if they started fixing security bugs
   customers might begin to *expect* it and imagine that their
   warranties of merchantability gave them some sort of *right*
   to a system with fewer holes in it than a shotgunned Swiss cheese,
   and then where would we be?

   Historical note: There are conflicting stories about the origin of
   this term.  It has been claimed that this term was first used in
   the USENET newsgroup in comp.sys.apollo during a campaign to
   get HP/Apollo to fix security problems in its UNIX-{clone}
   Aegis/DomainOS (they didn't change a thing).  {ITS} fans, on the
   other hand, say it was coined years earlier in opposition to the
   incredibly paranoid {Multics} people down the hall, for whom
   security was everything.  In the ITS culture it referred to (1) the
   fact that that by the time a tourist figured out how to make
   trouble he'd generally gotten over the urge to make it, because he
   felt part of the community; and (2) (self-mockingly) the poor
   coverage of the documentation and obscurity of many commands.  One
   instance of *deliberate* security through obscurity is
   recorded; the command to allow patching the running ITS system
   (altmode altmode control-R) echoed as $$^D.  If you actually typed
   alt alt ^D, that set a flag which would prevent patching the system
   even if you later got it right.

:space-cadet keyboard: n. A now-legendary device used on MIT LISP
   machines, which inspired several still-current jargon terms and
   influenced the design of {EMACS}.  It was equipped with no
   fewer than *seven* shift keys: four keys for {bucky bits}
   (`control', `meta', `hyper', and `super') and three like
   regular shift keys, called `shift', `top', and `front'.  Many
   keys had three symbols on them: a letter and a symbol on the top,
   and a Greek letter on the front.  For example, the `L' key had an
   `L' and a two-way arrow on the top, and the Greek letter lambda on
   the front.  If you press this key with the right hand while playing
   an appropriate `chord' with the left hand on the shift keys, you
   can get the following results:

     L               
          lowercase l

     shift-L         
          uppercase L

     front-L         
          lowercase lambda

     front-shift-L   
          uppercase lambda

     top-L           
          two-way arrow
          (front and shift are ignored)

   And of course each of these might also be typed with any
   combination of the control, meta, hyper, and super keys.  On this
   keyboard, you could type over 8000 different characters!  This
   allowed the user to type very complicated mathematical text, and
   also to have thousands of single-character commands at his
   disposal.  Many hackers were actually willing to memorize the
   command meanings of that many characters if it reduced typing time
   (this attitude obviously shaped the interface of EMACS).  Other
   hackers, however, thought having that many bucky bits was overkill,
   and objected that such a keyboard can require three or four hands
   to operate.  See {bucky bits}, {cokebottle}, {double bucky},
   {meta bit}, {quadruple bucky}.

   Note: early versions of this entry incorrectly identified the
   space-cadet keyboard with the `Knight keyboard'.  Though both
   were designed by Tom Knight, the latter term was properly applied
   only to a keyboard used for ITS on the PDP-10 and modelled 
   on the Stanford keyboard (as described under {bucky bits}).  The
   true space-cadet keyboard evolved from the Knight keyboard.

:spool: [from early IBM `Simultaneous Peripheral Operation
   On-Line', but this acronym is widely thought to have been contrived
   for effect] vt. To send files to some device or program (a
   `spooler') that queues them up and does something useful with
   them later.  The spooler usually understood is the `print
   spooler' controlling output of jobs to a printer, but the term has
   been used in connection with other peripherals (especially plotters
   and graphics devices) and occasionally even for input devices.  See
   also {demon}.

:T: /T/ 1. [from LISP terminology for `true'] Yes.  Used in
   reply to a question (particularly one asked using the `-P'
   convention).  In LISP, the constant T means `true', among other
   things.  Some hackers use `T' and `NIL' instead of `Yes' and `No'
   almost reflexively.  This sometimes causes misunderstandings.  When
   a waiter or flight attendant asks whether a hacker wants coffee, he
   may well respond `T', meaning that he wants coffee; but of course
   he will be brought a cup of tea instead.  As it happens, most
   hackers (particularly those who frequent Chinese restaurants) like
   tea at least as well as coffee --- so it is not that big a problem.
   2. See {time T} (also {since time T equals minus infinity}).
   3. [techspeak] In transaction-processing circles, an abbreviation
   for the noun `transaction'.  4. [Purdue] Alternate spelling of
   {tee}. 5. A dialect of {LISP} developed at Yale.

:talk mode: n. A feature supported by UNIX, ITS, and some other
   OSes that allows two or more logged-in users to set up a real-time
   on-line conversation.  It combines the immediacy of talking with
   all the precision (and verbosity) that written language entails.
   It is difficult to communicate inflection, though conventions have
   arisen for some of these (see the section on writing style in the
   Prependices for details).

   Talk mode has a special set of jargon words, used to save typing,
   which are not used orally.  Some of these are identical to (and
   probably derived from) Morse-code jargon used by ham-radio amateurs
   since the 1920s.

     `BCNU    '
          be seeing you
     `BTW'
          by the way
     `BYE?'
          are you ready to unlink?  (this is the standard way to end a
          talk-mode conversation; the other person types `BYE' to
          confirm, or else continues the conversation)
     `CUL     '
          see you later
     `ENQ?'
          are you busy?  (expects `ACK' or `NAK' in return)
     `FOO?'
          are you there? (often used on unexpected links, meaning also
          "Sorry if I butted in ..." (linker) or "What's up?"  (linkee))
     `FYI     '
          for your information
     `FYA     '
          for your amusement
     `GA'
          go ahead (used when two people have tried to type
          simultaneously; this cedes the right to type to the other)
     `GRMBL   '
          grumble (expresses disquiet or disagreement)
     `HELLOP'
          hello? (an instance of the `-P' convention)
     `JAM'
          just a minute (equivalent to `SEC....')
     `MIN     '
          same as `JAM'
     `NIL     '
          no (see {NIL})
     `O'
          over to you
     `OO      '
          over and out
     `/'
          another form of "over to you" (from x/y as "x over y")
     `\'
          lambda (used in discussing LISPy things)
     `OBTW  '
          oh, by the way
     `R U THERE?'
          are you there?
     `SEC     '
          wait a second (sometimes written `SEC...')
     `T'
          yes (see the main entry for {T})
     `TNX     '
          thanks
     `TNX 1.0E6'
          thanks a million (humorous)
     `TNXE6'
          another form of "thanks a million"
     `WRT     '
          with regard to, or with respect to.
     `WTF'
          the universal interrogative particle; WTF knows what it means?
     `WTH     '
          what the hell?
     `<double newline>'
          When the typing party has finished, he/she types two newlines
          to signal that he/she is done; this leaves a blank line
          between `speeches' in the conversation, making it easier to
          reread the preceding text.
     `<name>:'
          When three or more terminals are linked, it is conventional
          for each typist to {prepend} his/her login name or handle and
          a colon (or a hyphen) to each line to indicate who is typing
          (some conferencing facilities do this automatically).  The
          login name is often shortened to a unique prefix (possibly a
          single letter) during a very long conversation.
     `/\/\/\'
          A giggle or chuckle.  On a MUD, this usually means `earthquake
          fault'.

   Most of the above sub-jargon is used at both Stanford and MIT.
   Several of these expressions are also common in {email}, esp.
   FYI, FYA, BTW, BCNU, WTF, and CUL.  A few other abbreviations have
   been reported from commercial networks, such as GEnie and
   CompuServe, where on-line `live' chat including more than two
   people is common and usually involves a more `social' context,
   notably the following:

     `<g>'
          grin
     `<gr&d>'
          grinning, running, and ducking
     `BBL'
          be back later
     `BRB'
          be right back
     `HHOJ'
          ha ha only joking
     `HHOK'
          ha ha only kidding
     `HHOS'
          {ha ha only serious}
     `IMHO'
          in my humble opinion (see {IMHO})
     `LOL'
          laughing out loud
     `NHOH'
          Never Heard of Him/Her (often used in {initgame})
     `ROTF'
          rolling on the floor
     `ROTFL'
          rolling on the floor laughing
     `AFK'
          away from keyboard
     `b4'
          before
     `CU l8tr'
          see you later
     `MORF'
          male or female?
     `TTFN'
          ta-ta for now
     `TTYL'
          talk to you later
     `OIC'
          oh, I see
     `rehi'
          hello again

   Most of these are not used at universities or in the UNIX world,
   though ROTF and TTFN have gained some currency there and IMHO is
   common; conversely, most of the people who know these are
   unfamiliar with FOO?, BCNU, HELLOP, {NIL}, and {T}.

   The {MUD} community uses a mixture of USENET/Internet emoticons,
   a few of the more natural of the old-style talk-mode abbrevs, and
   some of the `social' list above; specifically, MUD respondents
   report use of BBL, BRB, LOL, b4, BTW, WTF, TTFN, and WTH.  The use
   of `rehi' is also common; in fact, mudders are fond of re-
   compounds and will frequently `rehug' or `rebonk' (see
   {bonk/oif}) people.  The word `re' by itself is taken as
   `regreet'.  In general, though, MUDders express a preference for
   typing things out in full rather than using abbreviations; this may
   be due to the relative youth of the MUD cultures, which tend to
   include many touch typists and to assume high-speed links.  The
   following uses specific to MUDs are reported:

     `UOK?'
          are you OK?
     `THX'
          thanks (mutant of `TNX'; clearly this comes in batches of 1138
          (the Lucasian K)).
     `CU l8er'
          see you later (mutant of `CU l8tr')
     `OTT'
          over the top (excessive, uncalled for)
     `FOAD'
          fuck off and die (use of this is often OTT)

   Some {BIFF}isms (notably the variant spelling `d00d')
   appear to be passing into wider use among some subgroups of
   MUDders.

   One final note on talk mode style: neophytes, when in talk mode,
   often seem to think they must produce letter-perfect prose because
   they are typing rather than speaking.  This is not the best
   approach.  It can be very frustrating to wait while your partner
   pauses to think of a word, or repeatedly makes the same spelling
   error and backs up to fix it.  It is usually best just to leave
   typographical errors behind and plunge forward, unless severe
   confusion may result; in that case it is often fastest just to type
   "xxx" and start over from before the mistake.

   See also {hakspek}, {emoticon}, {bonk/oif}.

:tiger team: [U.S. military jargon] n. 1. Originally, a team whose
   purpose is to penetrate security, and thus test security measures.
   These people are paid professionals who do hacker-type tricks,
   e.g., leave cardboard signs saying "bomb" in critical defense
   installations, hand-lettered notes saying "Your codebooks have
   been stolen" (they usually haven't been) inside safes, etc.  After
   a successful penetration, some high-ranking security type shows up
   the next morning for a `security review' and finds the sign,
   note, etc., and all hell breaks loose.  Serious successes of tiger
   teams sometimes lead to early retirement for base commanders and
   security officers (see the {patch} entry for an example).
   2. Recently, and more generally, any official inspection team or
   special {firefighting} group called in to look at a problem.

   A subset of tiger teams are professional {cracker}s, testing the
   security of military computer installations by attempting remote
   attacks via networks or supposedly `secure' comm channels.  Some of
   their escapades, if declassified, would probably rank among the
   greatest hacks of all times.  The term has been adopted in
   commercial computer-security circles in this more specific sense.

:tinycrud: /ti:'nee-kruhd/ n. 1. A pejorative used by habitues of older
   game-oriented {MUD} versions for TinyMUDs and other
   user-extensible {MUD} variants; esp. common among users of the
   rather violent and competitive AberMUD and MIST systems.  These
   people justify the slur on the basis of how (allegedly)
   inconsistent and lacking in genuine atmosphere the scenarios
   generated in user extensible MUDs can be.  Other common knocks on
   them are that they feature little overall plot, bad game topology,
   little competitive interaction, etc. --- not to mention the alleged
   horrors of the TinyMUD code itself.  This dispute is one of the MUD
   world's hardiest perennial {holy wars}.  2. TinyMud-oriented
   chat on the USENET group rec.games.mud and elsewhere,
   especially {newbie} questions and flamage.

:toolsmith: n. The software equivalent of a tool-and-die
   specialist; one who specializes in making the {tool}s with which
   other programmers create applications.  Many hackers consider this
   more fun than applications per se; to understand why, see
   {uninteresting}.

:toto: /toh'toh/ n. This is reported to be the default scratch
   file name among French-speaking programmers --- in other words, a
   francophone {foo}.  It is reported that the phonetic mutations
   "titi", "tata", and "tutu" canonically follow `toto',
   analogously to {bar}, {baz} and {quux} in English.

:tree-killer: [Sun] n. 1. A printer.  2. A person who wastes paper.
   This should be interpreted in a broad sense; `wasting paper'
   includes the production of {spiffy} but {content-free}
   documents.  Thus, most {suit}s are tree-killers.  The negative
   loading of this term may reflect the epithet `tree-killer'
   applied by Treebeard the Ent to the Orcs in J.R.R. Tolkien's
   `Lord of the Rings' trilogy (see also {elvish}, {elder
   days}).

:vdiff: /vee'dif/ v.,n. Visual diff.  The operation of finding
   differences between two files by {eyeball search}.  The term
   `optical diff' has also been reported, and is sometimes more
   specifically used for the act of superimposing two nearly identical
   printouts on one another and holding them up to a light to spot
   differences (this method is poor for detecting omissions in one
   file).  See {diff}.

:weenie: n. 1. [on BBSes] Any of a species of luser resembling a
   less amusing version of {BIFF} that infests many {BBS}
   systems.  The typical weenie is a teenage boy with poor social
   skills travelling under a grandiose {handle} derived from
   fantasy or heavy-metal rock lyrics.  Among sysops, `the weenie
   problem' refers to the marginally literate and profanity-laden
   {flamage} weenies tend to spew all over a newly-discovered BBS.
   Compare {spod}, {computer geek}, {terminal junkie}.
   2. [Among hackers] When used with a qualifier (for example, as in
   {UNIX weenie}, VMS weenie, IBM weenie) this can be either an
   insult or a term of praise, depending on context, tone of voice,
   and whether or not it is applied by a person who considers him or
   herself to be the same sort of weenie.  Implies that the weenie has
   put a major investment of time, effort, and concentration into the
   area indicated; whether this is positive or negative depends on the
   hearer's judgment of how the speaker feels about that area.  See
   also {bigot}.  3. The semicolon character, `;' (ASCII
   0111011).

:Wizard Book: n. Hal Abelson and Jerry Sussman's `Structure
   and Interpretation of Computer Programs' (MIT Press, 1984; ISBN
   0-262-01077-1, an excellent computer science text used in
   introductory courses at MIT.  So called because of the wizard on
   the jacket.  One of the {bible}s of the LISP/Scheme
   world.  Also, less commonly, known as the {Purple Book}.

:WYSIWYG: /wiz'ee-wig/ adj. Describes a user interface under
   which "What You See Is What You Get", as opposed to one that uses
   more-or-less obscure commands which do not result in immediate
   visual feedback.  True WYSIWYG is environments supporting multiple
   fonts or graphics is a a rarely-attained ideal; there are variants
   of this of this to express real-world manifestations including
   WYSIAWYG (What You See Is *Almost* What You Get) and
   WYSIMOLWYG (What You See Is More or Less What You Get).  All these
   can be mildly derogatory, as they are often used to refer to
   dumbed-down {user-friendly} interfaces targeted at
   non-programmers; a hacker has no fear of obscure commands (compare
   {WYSIAYG}).  On the other hand, EMACS was one of the very first
   WYSIWYG editors, replacing (actually, at first overlaying) the
   extremely obscure, command-based {TECO}.  See also {WIMP
   environment}.  [Oddly enough, WYSIWYG has already made it into the
   OED, in lower case yet. --- ESR]

:xyzzy: /X-Y-Z-Z-Y/, /X-Y-ziz'ee/, /ziz'ee/, or /ik-ziz'ee/
   [from the ADVENT game] adj.  The {canonical} `magic word'.
   This comes from {ADVENT}, in which the idea is to explore an
   underground cave with many rooms and to collect the treasures you
   find there.  If you type `xyzzy' at the appropriate time, you can
   move instantly between two otherwise distant points.  If,
   therefore, you encounter some bit of {magic}, you might remark
   on this quite succinctly by saying simply "Xyzzy!"  "Ordinarily
   you can't look at someone else's screen if he has protected it, but
   if you type quadruple-bucky-clear the system will let you do it
   anyway."  "Xyzzy!"  Xyzzy has actually been implemented as an
   undocumented no-op command on several OSes; in Data General's
   AOS/VS, for example, it would typically respond "Nothing
   happens", just as {ADVENT} did if the magic was invoked at the
   wrong spot or before a player had performed the action that enabled
   the word.  In more recent 32-bit versions, by the way, AOS/VS
   responds "Twice as much happens".  See also {plugh}.
-- 
      Eric S. Raymond = eric@snark.thyrsus.com  (mad mastermind of TMN-Netnews)