:fall through: v. (n. `fallthrough', var. `fall-through')
   1. To exit a loop by exhaustion, i.e., by having fulfilled its exit
   condition rather than via a break or exception condition that exits
   from the middle of it.  This usage appears to be *really* old,
   dating from the 1940s and 1950s.  2. To fail a test that would have
   passed control to a subroutine or some other distant portion of
   code.  3. In C, `fall-through' occurs when the flow of execution in
   a switch statement reaches a `case' label other than by
   jumping there from the switch header, passing a point where one
   would normally expect to find a `break'.  A trivial example:

     switch (color)
     {
     case GREEN:
        do_green();
        break;
     case PINK:
        do_pink();
        /* FALL THROUGH */
     case RED:
        do_red();
        break;
     default:
        do_blue();
        break;
     }

   The variant spelling `/* FALL THRU */' is also common.

   The effect of the above code is to `do_green()' when color is
   `GREEN', `do_red()' when color is `RED',
   `do_blue()' on any other color other than `PINK', and
   (and this is the important part) `do_pink()' *and then*
   `do_red()' when color is `PINK'.  Fall-through is
   {considered harmful} by some, though there are contexts (such as
   the coding of state machines) in which it is natural; it is
   generally considered good practice to include a comment
   highlighting the fall-through where one would normally expect a
   break.

:fan: n.  Without qualification, indicates a fan of science
   fiction, especially one who goes to {con}s and tends to hang out
   with other fans.  Many hackers are fans, so this term has been
   imported from fannish slang; however, unlike much fannish slang it
   is recognized by most non-fannish hackers.  Among SF fans the
   plural is correctly `fen', but this usage is not automatic to
   hackers.  "Laura reads the stuff occasionally but isn't really a
   fan."

:fandango on core: [UNIX/C hackers, from the Mexican dance] n.
   In C, a wild pointer that runs out of bounds, causing a {core
   dump}, or corrupts the `malloc(3)' {arena} in such a way as
   to cause mysterious failures later on, is sometimes said to have
   `done a fandango on core'.  On low-end personal machines without an
   MMU, this can corrupt the OS itself, causing massive lossage.
   Other frenetic dances such as the rhumba, cha-cha, or watusi, may
   be substituted.  See {aliasing bug}, {precedence lossage},
   {smash the stack}, {memory leak}, {memory smash},
   {overrun screw}, {core}.

:FAQ: /F-A-Q/ or /fak/ [USENET] n. 1. A Frequently Asked Question.
   2. A compendium of accumulated lore, posted periodically to
   high-volume newsgroups in an attempt to forestall such questions.
   Some people prefer the term `FAQ list' or `FAQL' /fa'kl/,
   reserving `FAQ' for sense 1.

   This lexicon itself serves as a good example of a collection of one
   kind of lore, although it is far too big for a regular FAQ
   posting.  Examples: "What is the proper type of NULL?"  and
   "What's that funny name for the `#' character?" are both
   Frequently Asked Questions.  Several FAQ lists refer readers to
   this file.

:FAQ list: /F-A-Q list/ or /fak list/ [USENET] n. Syn {FAQ},
   sense 2.

:FAQL: /fa'kl/ n. Syn. {FAQ list}.

:faradize: /far'*-di:z/ [US Geological Survey] v. To start any
   hyper-addictive process or trend, or to continue adding current to
   such a trend.  Telling one user about a new octo-tetris game you
   compiled would be a faradizing act --- in two weeks you might find
   your entire department playing the faradic game.

:farkled: /far'kld/ [DeVry Institute of Technology, Atlanta] adj.
   Syn. {hosed}.  Poss. owes something to Yiddish `farblondjet'.

:farming: [Adelaide University, Australia] n. What the heads of a
   disk drive are said to do when they plow little furrows in the
   magnetic media.  Associated with a {crash}.  Typically used as
   follows: "Oh no, the machine has just crashed; I hope the hard
   drive hasn't gone {farming} again."

:fascist: adj. 1. Said of a computer system with excessive or
   annoying security barriers, usage limits, or access policies.  The
   implication is that said policies are preventing hackers from
   getting interesting work done.  The variant `fascistic' seems to
   have been preferred at MIT, poss. by analogy with `touristic'
   (see {tourist}).  2. In the design of languages and other
   software tools, `the fascist alternative' is the most restrictive
   and structured way of capturing a particular function; the
   implication is that this may be desirable in order to simplify the
   implementation or provide tighter error checking.  Compare
   {bondage-and-discipline language}, although that term is global
   rather than local.

: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 them up, and use
   special auxiliary 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}.

:faulty: adj. Non-functional; buggy.  Same denotation as
   {bletcherous}, {losing}, q.v., but the connotation is much
   milder.

:fd leak: /F-D leek/ n. A kind of programming bug analogous to a
   {core leak}, in which a program fails to close file descriptors
   (`fd's) after file operations are completed, and thus eventually
   runs out of them.  See {leak}.

:fear and loathing: [from Hunter S. Thompson] n. A state inspired by the
   prospect of dealing with certain real-world systems and standards
   that are totally {brain-damaged} but ubiquitous --- Intel 8086s,
   or {COBOL}, or {{EBCDIC}}, or any {IBM} machine except the
   Rios (a.k.a. the RS/6000).  "Ack!  They want PCs to be able to
   talk to the AI machine.  Fear and loathing time!"

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

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

   A: "This seat doesn't recline."

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

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

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

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

   B: "Indeed."

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

:feature creature: [poss. fr. slang `creature feature' for a
   horror movie] n. 1. One who loves to add features to designs or
   programs, perhaps at the expense of coherence, concision, or
   {taste}.  2. Alternately, a mythical being that induces
   otherwise rational programmers to perpetrate such crocks.  See also
   {feeping creaturism}, {creeping featurism}.

: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 (and so labeled omed
   on the Mac II).  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.  Though this symbol technically
   stands for the word `sev"ardhet' (interesting feature) 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; Apple gives the translation "interesting
   feature"!

:feature shock: [from Alvin Toffler's book title `Future
   Shock'] n. A user's (or programmer's!) confusion when confronted
   with a package that has too many features and poor introductory
   material.

:featurectomy: /fee`ch*r-ek't*-mee/ n. The act of removing a
   feature from a program.  Featurectomies come in two flavors, the
   `righteous' and the `reluctant'.  Righteous featurectomies are
   performed because the remover believes the program would be more
   elegant without the feature, or there is already an equivalent and
   better way to achieve the same end.  (Doing so is not quite the
   same thing as removing a {misfeature}.)  Reluctant
   featurectomies are performed to satisfy some external constraint
   such as code size or execution speed.

:feep: /feep/ 1. n. The soft electronic `bell' sound of a
   display terminal (except for a VT-52); a beep (in fact, the
   microcomputer world seems to prefer {beep}).  2. vi. To cause
   the display to make a feep sound.  ASR-33s (the original TTYs) do
   not feep; they have mechanical bells that ring.  Alternate forms:
   {beep}, `bleep', or just about anything suitably
   onomatopoeic.  (Jeff MacNelly, in his comic strip "Shoe", uses
   the word `eep' for sounds made by computer terminals and video
   games; this is perhaps the closest written approximation yet.)  The
   term `breedle' was sometimes heard at SAIL, where the terminal
   bleepers are not particularly soft (they sound more like the
   musical equivalent of a raspberry or Bronx cheer; for a close
   approximation, imagine the sound of a Star Trek communicator's beep
   lasting for five seconds).  The `feeper' on a VT-52 has been
   compared to the sound of a '52 Chevy stripping its gears.  See also
   {ding}.

:feeper: /fee'pr/ n. The device in a terminal or workstation (usually
   a loudspeaker of some kind) that makes the {feep} sound.

:feeping creature: [from {feeping creaturism}] n. An unnecessary
   feature; a bit of {chrome} that, in the speaker's judgment, is
   the camel's nose for a whole horde of new features.

:feeping creaturism: /fee'ping kree`ch*r-izm/ n. A deliberate
   spoonerism for {creeping featurism}, meant to imply that the
   system or program in question has become a misshapen creature of
   hacks.  This term isn't really well defined, but it sounds so neat
   that most hackers have said or heard it.  It is probably reinforced
   by an image of terminals prowling about in the dark making their
   customary noises.

:feetch feetch: /feech feech/ interj. If someone tells you about
   some new improvement to a program, you might respond: "Feetch,
   feetch!"  The meaning of this depends critically on vocal
   inflection.  With enthusiasm, it means something like "Boy, that's
   great!  What a great hack!"  Grudgingly or with obvious doubt, it
   means "I don't know; it sounds like just one more unnecessary and
   complicated thing".  With a tone of resignation, it means, "Well,
   I'd rather keep it simple, but I suppose it has to be done".

:fence: n. 1. A sequence of one or more distinguished
   ({out-of-band}) characters (or other data items), used to
   delimit a piece of data intended to be treated as a unit (the
   computer-science literature calls this a `sentinel').  The NUL
   (ASCII 0000000) character that terminates strings in C is a fence.
   Hex FF is also (though slightly less frequently) used this way.
   See {zigamorph}.  2. An extra data value inserted in an array or
   other data structure in order to allow some normal test on the
   array's contents also to function as a termination test.  For
   example, a highly optimized routine for finding a value in an array
   might artificially place a copy of the value to be searched for
   after the last slot of the array, thus allowing the main search
   loop to search for the value without having to check at each pass
   whether the end of the array had been reached.  3. [among users of
   optimizing compilers] Any technique, usually exploiting knowledge
   about the compiler, that blocks certain optimizations.  Used when
   explicit mechanisms are not available or are overkill.  Typically a
   hack: "I call a dummy procedure there to force a flush of the
   optimizer's register-coloring info" can be expressed by the
   shorter "That's a fence procedure".

:fencepost error: n. 1. A problem with the discrete equivalent of a
   boundary condition, often exhibited in programs by iterative
   loops.  From the following problem: "If you build a fence 100 feet
   long with posts 10 feet apart, how many posts do you need?"
   (Either 9 or 11 is a better answer than the obvious 10.)  For
   example, suppose you have a long list or array of items, and want
   to process items m through n; how many items are there?  The
   obvious answer is n - m, but that is off by one; the right
   answer is n - m + 1.  A program that used the `obvious'
   formula would have a fencepost error in it.  See also {zeroth}
   and {off-by-one error}, and note that not all off-by-one errors
   are fencepost errors.  The game of Musical Chairs involves a
   catastrophic off-by-one error where N people try to sit in
   N - 1 chairs, but it's not a fencepost error.  Fencepost
   errors come from counting things rather than the spaces between
   them, or vice versa, or by neglecting to consider whether one
   should count one or both ends of a row.  2. [rare] An error
   induced by unexpected regularities in input values, which can (for
   instance) completely thwart a theoretically efficient binary tree or
   hash table implementation.  (The error here involves the difference
   between expected and worst case behaviors of an algorithm.)

:fepped out: /fept owt/ adj. The Symbolics 3600 LISP Machine has a
   Front-End Processor called a `FEP' (compare sense 2 of {box}).
   When the main processor gets {wedged}, the FEP takes control of
   the keyboard and screen.  Such a machine is said to have
   `fepped out'.

:FidoNet: n. A worldwide hobbyist network of personal computers
   which exchanges mail, discussion groups, and files.  Founded in 1984
   and originally consisting only of IBM PCs and compatibles, FidoNet
   now includes such diverse machines as Apple ][s, Ataris, Amigas,
   and UNIX systems.  Though it is much younger than {USENET},
   FidoNet is already (in early 1991) a significant fraction of
   USENET's size at some 8000 systems.

:field circus: [a derogatory pun on `field service'] n. The field
   service organization of any hardware manufacturer, but especially
   DEC.  There is an entire genre of jokes about DEC field circus
   engineers:

     Q: How can you recognize a DEC field circus engineer
        with a flat tire?
     A: He's changing one tire at a time to see which one is flat.

     Q: How can you recognize a DEC field circus engineer
        who is out of gas?
     A: He's changing one tire at a time to see which one is flat.

   [See {Easter egging} for additional insight on these jokes.]
 
   There is also the `Field Circus Cheer' (from the {plan file} for
   DEC on MIT-AI):

     Maynard! Maynard!
     Don't mess with us!
     We're mean and we're tough!
     If you get us confused
     We'll screw up your stuff.

   (DEC's service HQ is located in Maynard, Massachusetts.)

:field servoid: [play on `android'] /fee'ld ser'voyd/ n.
   Representative of a field service organization (see {field
   circus}).  This has many of the implications of {droid}.

:Fight-o-net: [FidoNet] n. Deliberate distortion of {FidoNet},
   often applied after a flurry of {flamage} in a particular
   {echo}, especially the SYSOP echo or Fidonews (see {'Snooze}).

:File Attach: [FidoNet] 1. n. A file sent along with a mail message
   from one BBS to another.  2. vt. Sending someone a file by using
   the File Attach option in a BBS mailer.

:File Request: [FidoNet] 1. n. The {FidoNet} equivalent of
   {FTP}, in which one BBS system automatically dials another and
   {snarf}s one or more files.  Often abbreviated `FReq'; files
   are often announced as being "available for FReq" in the same way
   that files are announced as being "available for/by anonymous
   FTP" on the Internet.  2. vt. The act of getting a copy of a file
   by using the File Request option of the BBS mailer.

:file signature: n. A {magic number} sense 3.

:filk: /filk/ [from SF fandom, where a typo for `folk' was
   adopted as a new word] n.,v. A popular or folk song with lyrics
   revised or completely new lyrics, intended for humorous effect when
   read, and/or to be sung late at night at SF conventions.  There is a
   flourishing subgenre of these called `computer filks', written by
   hackers and often containing rather sophisticated technical humor.
   See {double bucky} for an example.  Compare {grilf},
   {hing} and {newsfroup}.

:film at 11: [MIT: in parody of TV newscasters] 1. Used in
   conversation to announce ordinary events, with a sarcastic
   implication that these events are earth-shattering.  "{{ITS}}
   crashes; film at 11."  "Bug found in scheduler; film at 11."
   2. Also widely used outside MIT to indicate that additional
   information will be available at some future time, *without*
   the implication of anything particularly ordinary about the
   referenced event.  For example, "The mail file server died this
   morning; we found garbage all over the root directory.  Film at
   11." would indicate that a major failure had occurred but that the
   people working on it have no additional information about it as
   yet; use of the phrase in this way suggests gently that the problem
   is liable to be fixed more quickly if the people doing the fixing
   can spend time doing the fixing rather than responding to
   questions, the answers to which will appear on the normal "11:00
   news", if people will just be patient.

:filter: [orig. {{UNIX}}, now also in {{MS-DOS}}] n. A program that
   processes an input data stream into an output data stream in some
   well-defined way, and does no I/O to anywhere else except possibly
   on error conditions; one designed to be used as a stage in a
   `pipeline' (see {plumbing}).  Compare {sponge}.

:Finagle's Law: n. The generalized or `folk' version of
   {Murphy's Law}, fully named "Finagle's Law of Dynamic
   Negatives" and usually rendered "Anything that can go wrong,
   will".  One variant favored among hackers is "The perversity of
   the Universe tends towards a maximum" (but see also {Hanlon's
   Razor}).  The label `Finagle's Law' was popularized by SF author
   Larry Niven in several stories depicting a frontier culture of
   asteroid miners; this `Belter' culture professed a religion
   and/or running joke involving the worship of the dread god Finagle
   and his mad prophet Murphy.

:fine: [WPI] adj. Good, but not good enough to be {cuspy}.  The word
   `fine' is used elsewhere, of course, but without the implicit
   comparison to the higher level implied by {cuspy}.

:finger: [WAITS, via BSD UNIX] 1. n. A program that displays
   information about a particular user or all users logged on the
   system, or a remote system.  Typically shows full name, last login
   time, idle time, terminal line, and terminal location (where
   applicable).  May also display a {plan file} left by the user
   (see also {Hacking X for Y}).  2. vt. To apply finger to a
   username.  3. vt. By extension, to check a human's current state by
   any means.  "Foodp?"  "T!"  "OK, finger Lisa and see if she's
   idle."  4. Any picture (composed of ASCII characters) depicting
   `the finger'.  Originally a humorous component of one's plan file
   to deter the curious fingerer (sense 2), it has entered the arsenal
   of some {flamer}s.

:finger-pointing syndrome: n. All-too-frequent result of bugs, esp.
   in new or experimental configurations.  The hardware vendor points
   a finger at the software.  The software vendor points a finger
   at the hardware.  All the poor users get is the finger.

: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.
   
:firebottle: n. A large, primitive, power-hungry active electrical
   device, similar in function to a FET but constructed out of glass,
   metal, and vacuum.  Characterized by high cost, low density, low
   reliability, high-temperature operation, and high power
   dissipation.  Sometimes mistakenly called a `tube' in the U.S.
   or a `valve' in England; another hackish term is {glassfet}.

:firefighting: n. 1. What sysadmins have to do to correct sudden
   operational problems.  An opposite of hacking.  "Been hacking your
   new newsreader?"  "No, a power glitch hosed the network and I spent
   the whole afternoon fighting fires."  2. The act of throwing lots
   of manpower and late nights at a project, esp. to get it out
   before deadline.  See also {gang bang}, {Mongolian Hordes
   technique}; however, the term `firefighting' connotes that the
   effort is going into chasing bugs rather than adding features.

: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.  Compare {overrun}, {buffer
   overflow}.

:firewall code: n. 1. The code you put in a system (say, a
   telephone switch) to make sure that the users can't do any
   damage. Since users always want to be able to do everything but
   never want to suffer for any mistakes, the construction of a
   firewall is a question not only of defensive coding but also of
   interface presentation, so that users don't even get curious about
   those corners of a system where they can burn themselves.
   2. Any sanity check inserted to catch a {can't happen} error.
   Wise programmers often change code to fix a bug twice: once to fix
   the bug, and once to insert a firewall which would have arrested
   the bug before it did quite as much damage.

:firewall machine: n. A dedicated gateway machine with special
   security precautions on it, used to service outside network
   connections and dial-in lines.  The idea is to protect a cluster of
   more loosely administered machines hidden behind it from
   {cracker}s.  The typical firewall is an inexpensive micro-based
   UNIX box kept clean of critical data, with a bunch of modems and
   public network ports on it but just one carefully watched
   connection back to the rest of the cluster.  The special
   precautions may include threat monitoring, callback, and even a
   complete {iron box} keyable to particular incoming IDs or
   activity patterns.  Syn. {flytrap}, {Venus flytrap}.

:fireworks mode: n. The mode a machine is sometimes said to be in when
   it is performing a {crash and burn} operation.

:firmy: /fer'mee/ Syn. {stiffy} (a 3.5-inch floppy disk).

:fish: [Adelaide University, Australia] n. 1. Another {metasyntactic
   variable}.  See {foo}.  Derived originally from the Monty Python
   skit in the middle of "The Meaning of Life" entitled
   "Find the Fish".  2. A pun for `microfiche'.  A microfiche
   file cabinet may be referred to as a `fish tank'.

:FISH queue: [acronym, by analogy with FIFO (First In, First Out)]
   n. `First In, Still Here'.  A joking way of pointing out that
   processing of a particular sequence of events or requests has
   stopped dead.  Also `FISH mode' and `FISHnet'; the latter
   may be applied to any network that is running really slowly or
   exhibiting extreme flakiness.

:FITNR: // [Thinking Machines, Inc.] Fixed In the Next Release.
   A written-only notation attached to bug reports.  Often wishful
   thinking.

:fix: n.,v. What one does when a problem has been reported too many
   times to be ignored.

:FIXME: imp. A standard tag often put in C comments near a piece of
   code that needs work.  The point of doing this is so that a
   `grep' or similar pattern-matching tool can find all such
   places quickly.

     FIXME: note this is common in {GNU} code.

   Compare {XXX}.

:flag: n. A variable or quantity that can take on one of two
   values; a bit, particularly one that is used to indicate one of two
   outcomes or is used to control which of two things is to be done.
   "This flag controls whether to clear the screen before printing
   the message."  "The program status word contains several flag
   bits."  Used of humans analogously to {bit}.  See also
   {hidden flag}, {mode bit}.

:flag day: n. A software change that is neither forward- nor
   backward-compatible, and which is costly to make and costly to
   reverse.  "Can we install that without causing a flag day for all
   users?"  This term has nothing to do with the use of the word
   {flag} to mean a variable that has two values.  It came into use
   when a massive change was made to the {{Multics}} timesharing
   system to convert from the old ASCII code to the new one; this was
   scheduled for Flag Day (a U.S. holiday), June 14, 1966.  See also
   {backward combatability}.

:flaky: adj. (var sp. `flakey') Subject to frequent {lossage}.
   This use is of course related to the common slang use of the word
   to describe a person as eccentric, crazy, or just unreliable.  A
   system that is flaky is working, sort of --- enough that you are
   tempted to try to use it --- but fails frequently enough that the
   odds in favor of finishing what you start are low.  Commonwealth
   hackish prefers {dodgy} or {wonky}.

:flamage: /flay'm*j/ n. Flaming verbiage, esp. high-noise,
   low-signal postings to {USENET} or other electronic {fora}.
   Often in the phrase `the usual flamage'.  `Flaming' is the act
   itself; `flamage' the content; a `flame' is a single flaming
   message.  See {flame}.

:flame: 1. vi. To post an email message intended to insult and
   provoke.  2. vi. To speak incessantly and/or rabidly on some
   relatively uninteresting subject or with a patently ridiculous
   attitude.  3. vt. Either of senses 1 or 2, directed with
   hostility at a particular person or people.  4. n. An instance of
   flaming.  When a discussion degenerates into useless controversy,
   one might tell the participants "Now you're just flaming" or
   "Stop all that flamage!" to try to get them to cool down (so to
   speak).

   USENETter Marc Ramsey, who was at WPI from 1972 to 1976, adds: "I
   am 99% certain that the use of `flame' originated at WPI.  Those
   who made a nuisance of themselves insisting that they needed to use
   a TTY for `real work' came to be known as `flaming asshole lusers'.
   Other particularly annoying people became `flaming asshole ravers',
   which shortened to `flaming ravers', and ultimately `flamers'.  I
   remember someone picking up on the Human Torch pun, but I don't
   think `flame on/off' was ever much used at WPI."  See also
   {asbestos}.

   The term may have been independently invented at several different
   places; it is also reported that `flaming' was in use to mean
   something like `interminably drawn-out semi-serious discussions'
   (late-night bull sessions) at Carleton College during 1968--1971.

   It is possible that the hackish sense of `flame' is much older than
   that.  The poet Chaucer was also what passed for a wizard hacker in
   his time; he wrote a treatise on the astrolabe, the most advanced
   computing device of the day.  In Chaucer's `Troilus and
   Cressida', Cressida laments her inability to grasp the proof of a
   particular mathematical theorem; her uncle Pandarus then observes
   that it's called "the fleminge of wrecches."  This phrase seems
   to have been intended in context as "that which puts the wretches
   to flight" but was probably just as ambiguous in Middle English as
   "the flaming of wretches" would be today.  One suspects that
   Chaucer would feel right at home on USENET.

:flame bait: n. A posting intended to trigger a {flame war}, or one
   that invites flames in reply.

:flame on: vi.,interj.  1. To begin to {flame}.  The punning
   reference to Marvel Comics's Human Torch is no longer widely
   recognized.  2. To continue to flame.  See {rave}, {burble}.

:flame war: n. (var. `flamewar') An acrimonious dispute,
   especially when conducted on a public electronic forum such as
   {USENET}.

:flamer: n. One who habitually {flame}s.  Said esp. of obnoxious
   {USENET} personalities.

:flap: vt. 1. To unload a DECtape (so it goes flap, flap,
   flap...).  Old-time hackers at MIT tell of the days when the
   disk was device 0 and {microtape}s were 1, 2,... and
   attempting to flap device 0 would instead start a motor banging
   inside a cabinet near the disk.  2. By extension, to unload any
   magnetic tape.  See also {macrotape}.  Modern cartridge tapes no
   longer actually flap, but the usage has remained.  (The term could
   well be re-applied to DEC's TK50 cartridge tape drive, a
   spectacularly misengineered contraption which makes a loud flapping
   sound, almost like an old reel-type lawnmower, in one of its many
   tape-eating failure modes.)

:flarp: /flarp/ [Rutgers University] n. Yet another {metasyntactic
   variable} (see {foo}).  Among those who use it, it is associated
   with a legend that any program not containing the word `flarp'
   somewhere will not work.  The legend is discreetly silent on the
   reliability of programs which *do* contain the magic word.

:flat: adj. 1. Lacking any complex internal structure.  "That
   {bitty box} has only a flat filesystem, not a hierarchical
   one."  The verb form is {flatten}.  2. Said of a memory
   architecture (like that of the VAX or 680x0) that is one big linear
   address space (typically with each possible value of a processor
   register corresponding to a unique core address), as opposed to a
   `segmented' architecture (like that of the 80x86) in which
   addresses are composed from a base-register/offset pair (segmented
   designs are generally considered {cretinous}).
  
   Note that sense 1 (at least with respect to filesystems) is usually
   used pejoratively, while sense 2 is a {Good Thing}.

:flat-ASCII: adj. Said of a text file that contains only 7-bit
   ASCII characters and uses only ASCII-standard control characters
   (that is, has no embedded codes specific to a particular text
   formatter markup language, or output defice, and no
   {meta}-characters).  Syn. {plain-ASCII}.  Compare
   {flat-file}.

:flat-file: adj. A {flatten}ed representation of some database or
   tree or network structure as a single file from which the
   structure could implicitly be rebuilt, esp. one in {flat-ASCII}
   form.

:flatten: vt. To remove structural information, esp. to filter
   something with an implicit tree structure into a simple sequence of
   leaves; also tends to imply mapping to {flat-ASCII}.  "This code
   flattens an expression with parentheses into an equivalent
   {canonical} form."

:flavor: n. 1. Variety, type, kind.  "DDT commands come in two
   flavors."  "These lights come in two flavors, big red ones and
   small green ones."  See {vanilla}.  2. The attribute that causes
   something to be {flavorful}.  Usually used in the phrase "yields
   additional flavor".  "This convention yields additional flavor by
   allowing one to print text either right-side-up or upside-down."
   See {vanilla}.  This usage was certainly reinforced by the
   terminology of quantum chromodynamics, in which quarks (the
   constituents of, e.g., protons) come in six flavors (up, down,
   strange, charm, top, bottom) and three colors (red, blue, green)
   --- however, hackish use of `flavor' at MIT predated QCD.  3. The
   term for `class' (in the object-oriented sense) in the LISP Machine
   Flavors system.  Though the Flavors design has been superseded
   (notably by the Common LISP CLOS facility), the term `flavor' is
   still used as a general synonym for `class' by some LISP hackers.

:flavorful: adj. Full of {flavor} (sense 2); esthetically pleasing.  See
   {random} and {losing} for antonyms.  See also the entries for
   {taste} and {elegant}.

:flippy: /flip'ee/ n. A single-sided floppy disk altered for
   double-sided use by addition of a second write-notch, so called
   because it must be flipped over for the second side to be
   accessible.  No longer common.

: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.
   
:flowchart:: [techspeak] n. An archaic form of visual control-flow
   specification employing arrows and `speech balloons' of various
   shapes.  Hackers never use flowcharts, consider them extremely
   silly, and associate them with {COBOL} programmers, {card
   walloper}s, and other lower forms of life.  This attitude follows
   from the observations that flowcharts (at least from a hacker's
   point of view) are no easier to read than code, are less precise,
   and tend to fall out of sync with the code (so that they either
   obfuscate it rather than explaining it, or require extra
   maintenance effort that doesn't improve the code).  See also
   {pdl}, sense 3.

:flower key: [Mac users] n. See {feature key}.

:flush: v. 1. To delete something, usually superfluous, or to abort
   an operation.  "All that nonsense has been flushed."  2. [UNIX/C]
   To force buffered I/O to disk, as with an `fflush(3)' call.
   This is *not* an abort or deletion as in sense 1, but a
   demand for early completion!  3. To leave at the end of a day's
   work (as opposed to leaving for a meal).  "I'm going to flush
   now."  "Time to flush."  4. To exclude someone from an activity,
   or to ignore a person.

   `Flush' was standard ITS terminology for aborting an output
   operation; one spoke of the text that would have been printed, but
   was not, as having been flushed.  It is speculated that this term
   arose from a vivid image of flushing unwanted characters by hosing
   down the internal output buffer, washing the characters away before
   they could be printed.  The UNIX/C usage, on the other hand, was
   propagated by the `fflush(3)' call in C's standard I/O library
   (though it is reported to have been in use among BLISS programmers
   at DEC and on Honeywell and IBM machines as far back as 1965).
   UNIX/C hackers find the ITS usage confusing, and vice versa.

:flypage: /fli:'payj/ n. (alt. `fly page') A {banner}, sense
   1.

:Flyspeck 3: n. Standard name for any font that is so tiny as to be
   unreadable (by analogy with names like `Helvetica 10' for
   10-point Helvetica).  Legal boilerplate is usually printed in
   Flyspeck 3.

:flytrap: n. See {firewall machine}.

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

:fnord: [from the `Illuminatus Trilogy'] n. 1. A word used in
   email and news postings to tag utterances as surrealist mind-play
   or humor, esp. in connection with {Discordianism} and elaborate
   conspiracy theories.  "I heard that David Koresh is sharing an
   apartment in Argentina with Hitler. (Fnord.)", "Where can I fnord
   get the Principia Discordia from?"  2. A metasyntactic variable,
   commonly used by hackers with ties to {Discordianism} or the
   {Church of the SubGenius}.

:FOAF: // [USENET] n. Acronym for `Friend Of A Friend'.  The
   source of an unverified, possibly untrue story.  This term was not
   originated by hackers (it is used in Jan Brunvand's books on urban
   folklore), but is much better recognized on USENET and elsewhere
   than in mainstream English.

:FOD: /fod/ v. [Abbreviation for `Finger of Death', originally a
   spell-name from fantasy gaming] To terminate with extreme prejudice
   and with no regard for other people.  From {MUD}s where the
   wizard command `FOD <player>' results in the immediate and total
   death of <player>, usually as punishment for obnoxious behavior.
   This usage migrated to other circumstances, such as "I'm going to fod
   the process that is burning all the cycles."  Compare {gun}.

   In aviation, FOD means Foreign Object Damage, e.g., what happens
   when a jet engine sucks up a rock on the runway or a bird in
   flight.  Finger of Death is a distressingly apt description of
   what this generally does to the engine.

:fold case: v. See {smash case}.  This term tends to be used
   more by people who don't mind that their tools smash case.  It also
   connotes that case is ignored but case distinctions in data
   processed by the tool in question aren't destroyed.

:followup: n. On USENET, a {posting} generated in response to
   another posting (as opposed to a {reply}, which goes by email
   rather than being broadcast).  Followups include the ID of the
   {parent message} in their headers; smart news-readers can use
   this information to present USENET news in `conversation' sequence
   rather than order-of-arrival.  See {thread}.

: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]

: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 "The 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 has been suggested that this might be
   related to the Chinese word `fu' (sometimes transliterated
   `foo'), which can mean "happiness" when spoken with the proper
   tone (the lion-dog guardians flanking the steps of many Chinese
   restaurants are properly called "fu dogs").

   Earlier versions of this entry suggested the possibility that
   hacker usage actually sprang from `FOO, Lampoons and Parody',
   the title of a comic book first issued in September 1958, a joint
   project of Charles and Robert Crumb.  Though Robert Crumb (then in
   his mid-teens) later became one of the most important and
   influential artists in underground comics, this venture was hardly
   a success; indeed, the brothers later burned most of the existing
   copies in disgust.  The title FOO was featured in large letters on
   the front cover.  However, very few copies of this comic actually
   circulated, and students of Crumb's `oeuvre' have established
   that this title was a reference to the earlier Smokey Stover
   comics.

   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'.

:foobar: n. Another common {metasyntactic variable}; see {foo}.
   Hackers do *not* generally use this to mean {FUBAR} in
   either the slang or jargon sense.

:fool: n. As used by hackers, specifically describes a person who
   habitually reasons from obviously or demonstrably incorrect
   premises and cannot be persuaded by evidence to do otherwise; it is
   not generally used in its other senses, i.e., to describe a person
   with a native incapacity to reason correctly, or a clown.  Indeed,
   in hackish experience many fools are capable of reasoning all too
   effectively in executing their errors.  See also {cretin},
   {loser}, {fool file, the}.

:fool file, the: [USENET] n. A notional repository of all the most
   dramatically and abysmally stupid utterances ever.  An entire
   subgenre of {sig block}s consists of the header "From the fool
   file:" followed by some quote the poster wishes to represent as an
   immortal gem of dimwittery; for this usage to be really effective,
   the quote has to be so obviously wrong as to be laughable.  More
   than one USENETter has achieved an unwanted notoriety by being
   quoted in this way.

:Foonly: n. 1. The {PDP-10} successor that was to have been
   built by the Super Foonly project at the Stanford Artificial
   Intelligence Laboratory along with a new operating system.  The
   intention was to leapfrog from the old DEC timesharing system SAIL
   was then running to a new generation, bypassing TENEX which at that
   time was the ARPANET standard.  ARPA funding for both the Super
   Foonly and the new operating system was cut in 1974.  Most of the
   design team went to DEC and contributed greatly to the design of
   the PDP-10 model KL10.  2. The name of the company formed by Dave
   Poole, one of the principal Super Foonly designers, and one of
   hackerdom's more colorful personalities.  Many people remember the
   parrot which sat on Poole's shoulder and was a regular companion.
   3. Any of the machines built by Poole's company.  The first was the
   F-1 (a.k.a.  Super Foonly), which was the computational engine used
   to create the graphics in the movie "TRON".  The F-1 was the
   fastest PDP-10 ever built, but only one was ever made.  The effort
   drained Foonly of its financial resources, and the company turned
   towards building smaller, slower, and much less expensive
   machines.  Unfortunately, these ran not the popular {TOPS-20}
   but a TENEX variant called Foonex; this seriously limited their
   market.  Also, the machines shipped were actually wire-wrapped
   engineering prototypes requiring individual attention from more
   than usually competent site personnel, and thus had significant
   reliability problems.  Poole's legendary temper and unwillingness
   to suffer fools gladly did not help matters.  By the time of the
   Jupiter project cancellation in 1983, Foonly's proposal to build
   another F-1 was eclipsed by the {Mars}, and the company never
   quite recovered.  See the {Mars} entry for the continuation and
   moral of this story.

:footprint: n. 1. The floor or desk area taken up by a piece of
   hardware.  2. [IBM] The audit trail (if any) left by a crashed
   program (often in plural, `footprints').  See also
   {toeprint}.

:for free: adj. Said of a capability of a programming language or
   hardware equipment that is available by its design without needing
   cleverness to implement: "In APL, we get the matrix operations for
   free."  "And owing to the way revisions are stored in this
   system, you get revision trees for free."  The term usually refers
   to a serendipitous feature of doing things a certain way (compare
   {big win}), but it may refer to an intentional but secondary
   feature.

:for the rest of us: [from the Mac slogan "The computer for the
   rest of us"] adj. 1. Used to describe a {spiffy} product whose
   affordability shames other comparable products, or (more often)
   used sarcastically to describe {spiffy} but very overpriced
   products.  2. Describes a program with a limited interface,
   deliberately limited capabilities, non-orthogonality, inability to
   compose primitives, or any other limitation designed to not
   `confuse' a naive user.  This places an upper bound on how far
   that user can go before the program begins to get in the way of the
   task instead of helping accomplish it.  Used in reference to
   Macintosh software which doesn't provide obvious capabilities
   because it is thought that the poor lusers might not be able to
   handle them.  Becomes `the rest of *them*' when used in
   third-party reference; thus, "Yes, it is an attractive program,
   but it's designed for The Rest Of Them" means a program that
   superficially looks neat but has no depth beyond the surface flash.
   See also {WIMP environment}, {Macintrash},
   {point-and-drool interface}, {user-friendly}.

: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).

:fora: pl.n. Plural of {forum}.

:foreground: [UNIX] vt. To bring a task to the top of one's
   {stack} for immediate processing, and hackers often use it in
   this sense for non-computer tasks. "If your presentation is due
   next week, I guess I'd better foreground writing up the design
   document."

   Technically, on a time-sharing system, a task executing in
   foreground is one able to accept input from and return output to
   the user; oppose {background}.  Nowadays this term is primarily
   associated with {{UNIX}}, but it appears first to have been used
   in this sense on OS/360.  Normally, there is only one foreground
   task per terminal (or terminal window); having multiple processes
   simultaneously reading the keyboard is a good way to {lose}.

:fork bomb: [UNIX] n. A particular species of {wabbit} that can
   be written in one line of C (`main() {for(;;)fork();}') or shell
   (`$0 & $0 &') 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}.

: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}.

:Fortrash: /for'trash/ n. Hackerism for the FORTRAN (FORmula
   TRANslator) language, referring to its primitive design, gross and
   irregular syntax, limited control constructs, and slippery,
   exception-filled semantics.

: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}.

:forum: n. [USENET, GEnie, CI$; pl. `fora' or `forums'] Any
   discussion group accessible through a dial-in {BBS}, a
   {mailing list}, or a {newsgroup} (see {network, the}).  A
   forum functions much like a bulletin board; users submit
   {posting}s for all to read and discussion ensues.  Contrast
   real-time chat via {talk mode} or point-to-point personal
   {email}.

:fossil: n. 1. In software, a misfeature that becomes
   understandable only in historical context, as a remnant of times
   past retained so as not to break compatibility.  Example: the
   retention of octal as default base for string escapes in {C}, in
   spite of the better match of hexadecimal to ASCII and modern
   byte-addressable architectures.  See {dusty deck}.  2. More
   restrictively, a feature with past but no present utility.
   Example: the force-all-caps (LCASE) bits in the V7 and {BSD}
   UNIX tty driver, designed for use with monocase terminals.  (In a
   perversion of the usual backward-compatibility goal, this
   functionality has actually been expanded and renamed in some later
   {USG UNIX} releases as the IUCLC and OLCUC bits.)  3. The FOSSIL
   (Fido/Opus/Seadog Standard Interface Level) driver specification
   for serial-port access to replace the {brain-dead} routines in
   the IBM PC ROMs.  Fossils are used by most MS-DOS {BBS} software
   in preference to the `supported' ROM routines, which do not support
   interrupt-driven operation or setting speeds above 9600; the use of
   a semistandard FOSSIL library is preferable to the {bare metal}
   serial port programming otherwise required.  Since the FOSSIL
   specification allows additional functionality to be hooked in,
   drivers that use the {hook} but do not provide serial-port
   access themselves are named with a modifier, as in `video
   fossil'.

:four-color glossies: 1. Literature created by {marketroid}s
   that allegedly contains technical specs but which is in fact as
   superficial as possible without being totally {content-free}.
   "Forget the four-color glossies, give me the tech ref manuals."
   Often applied as an indication of superficiality even when the
   material is printed on ordinary paper in black and white.
   Four-color-glossy manuals are *never* useful for finding a
   problem.  2. [rare] Applied by extension to manual pages that don't
   contain enough information to diagnose why the program doesn't
   produce the expected or desired output.

:fragile: adj. Syn {brittle}.

:fred: n. 1. The personal name most frequently used as a
   {metasyntactic variable} (see {foo}).  Allegedly popular
   because it's easy for a non-touch-typist to type on a standard
   QWERTY keyboard.  Unlike {J. Random Hacker} or `J. Random
   Loser', this name has no positive or negative loading (but see
   {Mbogo, Dr. Fred}).  See also {barney}.  2. An acronym for
   `Flipping Ridiculous Electronic Device'; other F-verbs may be
   substituted for `flipping'.

:frednet: /fred'net/ n. Used to refer to some {random} and
   uncommon protocol encountered on a network.  "We're implementing
   bridging in our router to solve the frednet problem."

:freeware: n. Free software, often written by enthusiasts and
   distributed by users' groups, or via electronic mail, local
   bulletin boards, {USENET}, or other electronic media.  At one
   time, `freeware' was a trademark of Andrew Fluegelman, the author
   of the well-known MS-DOS comm program PC-TALK III.  It wasn't
   enforced after his mysterious disappearance and presumed death
   in 1984.  See {shareware}.

:freeze: v. To lock an evolving software distribution or document
   against changes so it can be released with some hope of stability.
   Carries the strong implication that the item in question will
   `unfreeze' at some future date.  "OK, fix that bug and we'll
   freeze for release."

   There are more specific constructions on this term.  A `feature
   freeze', for example, locks out modifications intended to introduce
   new features but still allows bugfixes and completion of existing
   features; a `code freeze' connotes no more changes at all.  At
   Sun Microsystems and elsewhere, one may also hear references to
   `code slush' --- that is, an almost-but-not-quite frozen state.

:fried: adj. 1. Non-working due to hardware failure; burnt out.
   Especially used of hardware brought down by a `power glitch' (see
   {glitch}), {drop-outs}, a short, or some other electrical
   event.  (Sometimes this literally happens to electronic circuits!
   In particular, resistors can burn out and transformers can melt
   down, emitting noxious smoke --- see {friode}, {SED} and
   {LER}.  However, this term is also used metaphorically.)
   Compare {frotzed}.  2. Of people, exhausted.  Said particularly
   of those who continue to work in such a state.  Often used as an
   explanation or excuse.  "Yeah, I know that fix destroyed the file
   system, but I was fried when I put it in."  Esp. common in
   conjunction with `brain': "My brain is fried today, I'm very
   short on sleep."

:frink: /frink/ v. The unknown ur-verb, fill in your own meaning.
   Found esp. on the USENET newsgroup alt.fan.lemur, where it is
   said that the lemurs know what `frink' means, but they aren't
   telling.  Compare {gorets}.

:friode: /fri:'ohd/ [TMRC] n. A reversible (that is, fused or
   blown) diode.  Compare {fried}; see also {SED}, {LER}.

:fritterware: n. An excess of capability that serves no productive
   end.  The canonical example is font-diddling software on the Mac
   (see {macdink}); the term describes anything that eats huge
   amounts of time for quite marginal gains in function but seduces
   people into using it anyway.  See also {window shopping}.

: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 (sense 2).  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.

:frobnicate: /frob'ni-kayt/ vt. [Poss. derived from
   {frobnitz}, and usually abbreviated to {frob}, but
   `frobnicate' is recognized as the official full form.] To
   manipulate or adjust, to tweak.  One frequently frobs bits or other
   2-state devices.  Thus: "Please frob the light switch" (that is,
   flip it), but also "Stop frobbing that clasp; you'll break it".
   One also sees the construction `to frob a frob'.  See {tweak}
   and {twiddle}.

   Usage: frob, twiddle, and tweak sometimes connote points along a
   continuum.  `Frob' connotes aimless manipulation; `twiddle'
   connotes gross manipulation, often a coarse search for a proper
   setting; `tweak' connotes fine-tuning.  If someone is turning a
   knob on an oscilloscope, then if he's carefully adjusting it, he is
   probably tweaking it; if he is just turning it but looking at the
   screen, he is probably twiddling it; but if he's just doing it
   because turning a knob is fun, he's frobbing it.  The variant
   `frobnosticate' has been recently reported.

:frobnitz: /frob'nits/, plural `frobnitzem' /frob'nit-zm/ or
   `frob-ni' /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 variants can also be applied to nonphysical
   objects, such as data structures.

   Pete Samson, compiler of the original {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.

:frog: alt. `phrog' 1. interj. Term of disgust (we seem to have
   a lot of them).  2. Used as a name for just about anything.  See
   {foo}.  3. n. Of things, a crock.  4. n. Of people, somewhere
   in between a turkey and a toad.  5. `froggy': adj. Similar to
   `bagbiting' (see {bagbiter}), but milder.  "This froggy
   program is taking forever to run!"

: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.  This
   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.

:front end: n. 1. An intermediary computer that does set-up and
   filtering for another (usually more powerful but less friendly)
   machine (a `back end').  2. What you're talking to when you
   have a conversation with someone who is making replies without
   paying attention.  "Look at the dancing elephants!"  "Uh-huh."
   "Do you know what I just said?"  "Sorry, you were talking to the
   front end."  See also {fepped out}.  3. Software that provides
   an interface to another program `behind' it, which may not be as
   user-friendly.  Probably from analogy with hardware front-ends (see
   sense 1) that interfaced with mainframes.

:frotz: /frots/ 1. n. See {frobnitz}.  2. `mumble frotz': An
   interjection of mildest disgust.

:frotzed: /frotst/ adj. {down} because of hardware problems.  Compare
   {fried}.  A machine that is merely frotzed may be fixable
   without replacing parts, but a fried machine is more seriously
   damaged.

:frowney: n. (alt. `frowney face')  See {emoticon}.

:fry: 1. vi. To fail.  Said especially of smoke-producing hardware
   failures.  More generally, to become non-working.  Usage: never
   said of software, only of hardware and humans.  See {fried},
   {magic smoke}.  2. vt. To cause to fail; to {roach}, {toast},
   or {hose} a piece of hardware.  Never used of software or humans,
   but compare {fried}.

:FTP: /F-T-P/, *not* /fit'ip/ 1. [techspeak] n. The File
   Transfer Protocol for transmitting files between systems on the
   Internet.  2. vt. To {beam} a file using the File Transfer
   Protocol.  3. Sometimes used as a generic even for file transfers
   not using {FTP}.  "Lemme get a copy of `Wuthering
   Heights' ftp'd from uunet."

:FUBAR: n. The Failed UniBus Address Register in a VAX.  A good
   example of how jargon can occasionally be snuck past the {suit}s;
   see {foobar}, and {foo} for a fuller etymology.

:fuck me harder: excl. Sometimes uttered in response to egregious
   misbehavior, esp. in software, and esp. of misbehaviors which
   seem unfairly persistent (as though designed in by the imp of the
   perverse).  Often theatrically elaborated: "Aiighhh! Fuck me with
   a piledriver and 16 feet of curare-tipped wrought-iron fence
   *and no lubricants*!" The phrase is sometimes heard
   abbreviated `FMH' in polite company.

   [This entry is an extreme example of the hackish habit of coining
   elaborate and evocative terms for lossage. Here we see a quite
   self-conscious parody of mainstream expletives that has become a
   running gag in part of the hacker culture; it illustrates the
   hackish tendency to turn any situation, even one of extreme
   frustration, into an intellectual game (the point being, in this
   case, to creatively produce a long-winded description of the
   most anatomically absurd mental image possible --- the short forms
   implicitly allude to all the ridiculous long forms ever spoken).
   Scatological language is actually relatively uncommon among
   hackers, and there was some controversy over whether this entry
   ought to be included at all.  As it reflects a live usage
   recognizably peculiar to the hacker culture, we feel it is
   in the hackish spirit of truthfulness and opposition to all
   forms of censorship to record it here. --- ESR & GLS]

:FUD: /fuhd/ n. Defined by Gene Amdahl after he left IBM to found
   his own company: "FUD is the fear, uncertainty, and doubt that IBM
   sales people instill in the minds of potential customers who might
   be considering [Amdahl] products."  The idea, of course, was to
   persuade them to go with safe IBM gear rather than with
   competitors' equipment.  This implicit coercion was traditionally
   accomplished by promising that Good Things would happen to people
   who stuck with IBM, but Dark Shadows loomed over the future of
   competitors' equipment or software.  See {IBM}.

:FUD wars: /fuhd worz/ n. [from {FUD}] Political posturing engaged in
   by hardware and software vendors ostensibly committed to
   standardization but actually willing to fragment the market to
   protect their own shares.  The UNIX International vs. OSF conflict
   is but one outstanding example.

:fudge: 1. vt. To perform in an incomplete but marginally acceptable
   way, particularly with respect to the writing of a program.  "I
   didn't feel like going through that pain and suffering, so I fudged
   it --- I'll fix it later."  2. n. The resulting code.

:fudge factor: n. A value or parameter that is varied in an ad hoc way
   to produce the desired result.  The terms `tolerance' and
   {slop} are also used, though these usually indicate a one-sided
   leeway, such as a buffer that is made larger than necessary
   because one isn't sure exactly how large it needs to be, and it is
   better to waste a little space than to lose completely for not
   having enough.  A fudge factor, on the other hand, can often be
   tweaked in more than one direction.  A good example is the `fuzz'
   typically allowed in floating-point calculations: two numbers being
   compared for equality must be allowed to differ by a small amount;
   if that amount is too small, a computation may never terminate,
   while if it is too large, results will be needlessly inaccurate.
   Fudge factors are frequently adjusted incorrectly by programmers
   who don't fully understand their import.  See also {coefficient
   of X}.

:fuel up: vi. To eat or drink hurriedly in order to get back to
   hacking.  "Food-p?"  "Yeah, let's fuel up."  "Time for a
   {great-wall}!"  See also {{oriental food}}.

: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.

:funky: adj. Said of something that functions, but in a slightly
   strange, klugey way.  It does the job and would be difficult to
   change, so its obvious non-optimality is left alone.  Often used to
   describe interfaces.  The more bugs something has that nobody has
   bothered to fix because workarounds are easier, the funkier it is.
   {TECO} and UUCP are funky.  The Intel i860's exception handling is
   extraordinarily funky.  Most standards acquire funkiness as they
   age.  "The new mailer is installed, but is still somewhat funky;
   if it bounces your mail for no reason, try resubmitting it."
   "This UART is pretty funky.  The data ready line is active-high in
   interrupt mode and active-low in DMA mode."

:funny money: n. 1. Notional `dollar' units of computing time
   and/or storage handed to students at the beginning of a computer
   course; also called `play money' or `purple money' (in implicit
   opposition to real or `green' money).  In New Zealand and Germany
   the odd usage `paper money' has been recorded; in Germany, the
   particularly amusing synonym `transfer ruble' commemmorates the
   funny money used for trade between COMECON countries back when the
   Soviet Bloc still existed.  When your funny money ran out, your
   account froze and you needed to go to a professor to get more.
   Fortunately, the plunging cost of timesharing cycles has made this
   less common.  The amounts allocated were almost invariably too
   small, even for the non-hackers who wanted to slide by with minimum
   work.  In extreme cases, the practice led to small-scale black
   markets in bootlegged computer accounts.  2. By extension, phantom
   money or quantity tickets of any kind used as a resource-allocation
   hack within a system.  Antonym: `real money'.

:fuzzball: [TCP/IP hackers] n. A DEC LSI-11 running a particular
   suite of homebrewed software written by Dave Mills and assorted
   co-conspirators, used in the early 1980s for Internet protocol
   testbedding and experimentation.  These were used as NSFnet
   backbone sites in its early 56KB-line days; a few are still active
   on the Internet as of early 1991, doing odd jobs such as network
   time service.

= G =
=====

:G: [SI] pref.,suff. See {{quantifiers}}.

:gabriel: /gay'bree-*l/ [for Dick Gabriel, SAIL LISP hacker and
   volleyball fanatic] n. An unnecessary (in the opinion of the
   opponent) stalling tactic, e.g., tying one's shoelaces or combing
   one's hair repeatedly, asking the time, etc.  Also used to refer to
   the perpetrator of such tactics.  Also, `pulling a Gabriel',
   `Gabriel mode'.

:gag: vi. Equivalent to {choke}, but connotes more disgust. "Hey,
   this is FORTRAN code.  No wonder the C compiler gagged."  See also
   {barf}.

:gang bang: n. The use of large numbers of loosely coupled
   programmers in an attempt to wedge a great many features into a
   product in a short time.  Though there have been memorable gang
   bangs (e.g., that over-the-weekend assembler port mentioned in
   Steven Levy's `Hackers'), most are perpetrated by large
   companies trying to meet deadlines; the inevitable result is
   enormous buggy masses of code entirely lacking in
   {orthogonal}ity.  When market-driven managers make a list of all
   the features the competition has and assign one programmer to
   implement each, the probability of maintaining a coherent (or even
   functional) design goes infinitesimal.  See also {firefighting},
   {Mongolian Hordes technique}, {Conway's Law}.

:garbage collect: vi. (also `garbage collection', n.) See {GC}.

:garply: /gar'plee/ [Stanford] n. Another metasyntactic variable (see
   {foo}); once popular among SAIL hackers.

:gas: [as in `gas chamber'] 1. interj. A term of disgust and
   hatred, implying that gas should be dispensed in generous
   quantities, thereby exterminating the source of irritation.  "Some
   loser just reloaded the system for no reason!  Gas!"  2. interj. A
   suggestion that someone or something ought to be flushed out of
   mercy.  "The system's getting {wedged} every few minutes.
   Gas!"  3. vt.  To {flush} (sense 1).  "You should gas that old
   crufty software."  4. [IBM] n. Dead space in nonsequentially
   organized files that was occupied by data that has since been
   deleted; the compression operation that removes it is called
   `degassing' (by analogy, perhaps, with the use of the same term
   in vacuum technology).  5. [IBM] n. Empty space on a disk that has
   been clandestinely allocated against future need.

:gaseous: adj. Deserving of being {gas}sed.  Disseminated by
   Geoff Goodfellow while at SRI; became particularly popular after
   the Moscone-Milk killings in San Francisco, when it was learned
   that the defendant Dan White (a politician who had supported
   Proposition 7) would get the gas chamber under Proposition 7 if
   convicted of first-degree murder (he was eventually convicted of
   manslaughter).

:GC: /G-C/ [from LISP terminology; `Garbage Collect']
   1. vt. To clean up and throw away useless things.  "I think I'll
   GC the top of my desk today."  When said of files, this is
   equivalent to {GFR}.  2. vt. To recycle, reclaim, or put to
   another use.  3. n. An instantiation of the garbage collector
   process.

   `Garbage collection' is computer-science techspeak for a
   particular class of strategies for dynamically but transparently
   reallocating computer memory (i.e., without requiring explicit
   allocation and deallocation by higher-level software).  One such
   strategy involves periodically scanning all the data in memory and
   determining what is no longer accessible; useless data items are
   then discarded so that the memory they occupy can be recycled and
   used for another purpose.  Implementations of the LISP language
   usually use garbage collection.

   In jargon, the full phrase is sometimes heard but the {abbrev} is
   more frequently used because it is shorter.  Note that there is an
   ambiguity in usage that has to be resolved by context: "I'm going
   to garbage-collect my desk" usually means to clean out the
   drawers, but it could also mean to throw away or recycle the desk
   itself.

:GCOS:: /jee'kohs/ n. A {quick-and-dirty} {clone} of
   System/360 DOS that emerged from GE around 1970; originally called
   GECOS (the General Electric Comprehensive Operating System).  Later
   kluged to support primitive timesharing and transaction processing.
   After the buyout of GE's computer division by Honeywell, the name
   was changed to General Comprehensive Operating System (GCOS).
   Other OS groups at Honeywell began referring to it as `God's Chosen
   Operating System', allegedly in reaction to the GCOS crowd's
   uninformed and snotty attitude about the superiority of their
   product.  All this might be of zero interest, except for two facts:
   (1) The GCOS people won the political war, and this led in the
   orphaning and eventual death of Honeywell {{Multics}}, and
   (2) GECOS/GCOS left one permanent mark on UNIX.  Some early UNIX
   systems at Bell Labs used GCOS machines for print spooling and
   various other services; the field added to `/etc/passwd' to
   carry GCOS ID information was called the `GECOS field' and
   survives today as the `pw_gecos' member used for the user's
   full name and other human-ID information.  GCOS later played a
   major role in keeping Honeywell a dismal also-ran in the mainframe
   market, and was itself ditched for UNIX in the late 1980s when
   Honeywell retired its aging {big iron} designs.

:GECOS:: /jee'kohs/ n. See {{GCOS}}.

:gedanken: /g*-don'kn/ adj. Ungrounded; impractical; not
   well-thought-out; untried; untested.

   `Gedanken' is a German word for `thought'.  A thought
   experiment is one you carry out in your head.  In physics, the term
   `gedanken experiment' is used to refer to an experiment that is
   impractical to carry out, but useful to consider because it can
   be reasoned about theoretically.  (A classic gedanken experiment of
   relativity theory involves thinking about a man in an elevator
   accelerating through space.)  Gedanken experiments are very useful
   in physics, but must be used with care.  It's too easy to idealize
   away some important aspect of the real world in contructing the
   `apparatus'.

   Among hackers, accordingly, the word has a pejorative connotation.
   It is typically used of a project, especially one in artificial
   intelligence research, that is written up in grand detail
   (typically as a Ph.D.  thesis) without ever being implemented to
   any great extent.  Such a project is usually perpetrated by people
   who aren't very good hackers or find programming distasteful or are
   just in a hurry.  A `gedanken thesis' is usually marked by an
   obvious lack of intuition about what is programmable and what is
   not, and about what does and does not constitute a clear
   specification of an algorithm.  See also {AI-complete},
   {DWIM}.

:geef: v. [ostensibly from `gefingerpoken'] vt. Syn. {mung}.  See
   also {blinkenlights}.

:geek out: vi. To temporarily enter techno-nerd mode while in a
   non-hackish context, for example at parties held near computer
   equipment.  Especially used when you need to do or say something
   highly technical and don't have time to explain: "Pardon me while
   I geek out for a moment."  See {computer geek}; see also
   {propeller head}.

:gen: /jen/ n.,v. Short for {generate}, used frequently in both spoken
   and written contexts.

:gender mender: n. A cable connector shell with either two male or
   two female connectors on it, used to correct the mismatches that
   result when some {loser} didn't understand the RS232C
   specification and the distinction between DTE and DCE.  Used
   esp. for RS-232C parts in either the original D-25 or the
   IBM PC's bogus D-9 format.  Also called `gender bender',
   `gender blender', `sex changer', and even `homosexual
   adapter'; however, there appears to be some confusion as to whether
   a `male homosexual adapter' has pins on both sides (is doubly
   male) or sockets on both sides (connects two males).

:General Public Virus: n. Pejorative name for some versions of the
   {GNU} project {copyleft} or General Public License (GPL), which
   requires that any tools or {app}s incorporating copylefted code
   must be source-distributed on the same counter-commercial terms as
   GNU stuff.  Thus it is alleged that the copyleft `infects' software
   generated with GNU tools, which may in turn infect other software
   that reuses any of its code.  The Free Software Foundation's
   official position as of January 1991 is that copyright law limits
   the scope of the GPL to "programs textually incorporating
   significant amounts of GNU code", and that the `infection' is not
   passed on to third parties unless actual GNU source is transmitted
   (as in, for example, use of the Bison parser skeleton).
   Nevertheless, widespread suspicion that the {copyleft} language
   is `boobytrapped' has caused many developers to avoid using GNU
   tools and the GPL.  Recent (July 1991) changes in the language of
   the version 2.00 license may eliminate this problem.

:generate: vt. To produce something according to an algorithm or
   program or set of rules, or as a (possibly unintended) side effect
   of the execution of an algorithm or program.  The opposite of
   {parse}.  This term retains its mechanistic connotations (though
   often humorously) when used of human behavior.  "The guy is
   rational most of the time, but mention nuclear energy around him
   and he'll generate {infinite} flamage."

:gensym: /jen'sim/ [from MacLISP for `generated symbol']
   1. v.  To invent a new name for something temporary, in such a way
   that the name is almost certainly not in conflict with one already
   in use.  2. n.  The resulting name.  The canonical form of a gensym
   is `Gnnnn' where nnnn represents a number; any LISP hacker would
   recognize G0093 (for example) as a gensym.  3. A freshly generated
   data structure with a gensymmed name.  Gensymmed names are useful
   for storing or uniquely identifying crufties (see
   {cruft}).

:Get a life!: imp. Hacker-standard way of suggesting that the
   person to whom it is directed has succumbed to terminal geekdom
   (see {computer geek}).  Often heard on {USENET}, esp. as a
   way of suggesting that the target is taking some obscure issue of
   {theology} too seriously.  This exhortation was popularized by
   William Shatner on a "Saturday Night Live" episode in a
   speech that ended "Get a *life*!", but some respondents
   believe it to have been in use before then.  It was certainly in
   wide use among hackers for at least five years before achieving
   mainstream currency in early 1992.

:Get a real computer!: imp. Typical hacker response to news that
   somebody is having trouble getting work done on a system that
   (a) is single-tasking, (b) has no hard disk, or (c) has an address
   space smaller than 16 megabytes.  This is as of mid-1993; note that
   the threshold for `real computer' rises with time, and it may well
   be (for example) that machines with character-only displays will be
   generally considered `unreal' in a few years (GLS points out that
   they already are in some circles).  See {essentials}, {bitty
   box}, and {toy}.

:GFR: /G-F-R/ vt. [ITS: from `Grim File Reaper', an ITS and LISP
   Machine utility] To remove a file or files according to some
   program-automated or semi-automatic manual procedure, especially
   one designed to reclaim mass storage space or reduce name-space
   clutter (the original GFR actually moved files to tape).  Often
   generalized to pieces of data below file level.  "I used to have
   his phone number, but I guess I {GFR}ed it."  See also
   {prowler}, {reaper}.  Compare {GC}, which discards only
   provably worthless stuff.

:gig: /jig/ or /gig/ [SI] n. See {{quantifiers}}.

:giga-: /ji'ga/ or /gi'ga/ [SI] pref. See {{quantifiers}}.

:GIGO: /gi:'goh/ [acronym] 1. `Garbage In, Garbage Out' ---
   usually said in response to {luser}s who complain that a program
   didn't "do the right thing" when given imperfect input or
   otherwise mistreated in some way.  Also commonly used to describe
   failures in human decision making due to faulty, incomplete, or
   imprecise data.  2. `Garbage In, Gospel Out': this more recent
   expansion is a sardonic comment on the tendency human beings have
   to put excessive trust in `computerized' data.

:gilley: [USENET] n. The unit of analogical bogosity.  According to
   its originator, the standard for one gilley was "the act of
   bogotoficiously comparing the shutting down of 1000 machines for a
   day with the killing of one person".  The milligilley has been
   found to suffice for most normal conversational exchanges.

:gillion: /gil'y*n/ or /jil'y*n/ [formed from {giga-} by analogy
   with mega/million and tera/trillion] n. 10^9. Same as an
   American billion or a British `milliard'.  How one pronounces
   this depends on whether one speaks {giga-} with a hard or
   soft `g'.

:GIPS: /gips/ or /jips/ [analogy with {MIPS}] n.
   Giga-Instructions per Second (also possibly `Gillions of
   Instructions per Second'; see {gillion}).  In 1991, this is used
   of only a handful of highly parallel machines, but this is expected
   to change.  Compare {KIPS}.

:glark: /glark/ vt. To figure something out from context.  "The
   System III manuals are pretty poor, but you can generally glark the
   meaning from context."  Interestingly, the word was originally
   `glork'; the context was "This gubblick contains many
   nonsklarkish English flutzpahs, but the overall pluggandisp can be
   glorked [sic] from context" (David Moser, quoted by Douglas
   Hofstadter in his "Metamagical Themas" column in the
   January 1981 `Scientific American').  It is conjectured that
   hackish usage mutated the verb to `glark' because {glork} was
   already an established jargon term.  Compare {grok},
   {zen}.

:glass: [IBM] n. Synonym for {silicon}.

:glass tty: /glas T-T-Y/ or /glas ti'tee/ n. A terminal that
   has a display screen but which, because of hardware or software
   limitations, behaves like a teletype or some other printing
   terminal, thereby combining the disadvantages of both: like a
   printing terminal, it can't do fancy display hacks, and like a
   display terminal, it doesn't produce hard copy.  An example is the
   early `dumb' version of Lear-Siegler ADM 3 (without cursor
   control).  See {tube}, {tty}; compare {dumb terminal}, {smart
   terminal}.  See "{TV Typewriters}" (appendix A) for an
   interesting true story about a glass tty.

:glassfet: /glas'fet/ [by analogy with MOSFET, the acronym for
   `Metal-Oxide-Semiconductor Field-Effect Transistor'] n. Syn.
   {firebottle}, a humorous way to refer to a vacuum tube.

:glitch: /glich/ [from German `glitschen' to slip, via Yiddish
   `glitshen', to slide or skid] 1. n. A sudden interruption in
   electric service, sanity, continuity, or program function.
   Sometimes recoverable.  An interruption in electric service is
   specifically called a `power glitch' (also {power hit}), of
   grave concern because it usually crashes all the computers.  In
   jargon, though, a hacker who got to the middle of a sentence and
   then forgot how he or she intended to complete it might say,
   "Sorry, I just glitched".  2. vi. To commit a glitch.  See
   {gritch}.  3. vt.  [Stanford] To scroll a display screen, esp.
   several lines at a time.  {{WAITS}} terminals used to do this in
   order to avoid continuous scrolling, which is distracting to the
   eye.  4. obs.  Same as {magic cookie}, sense 2.

   All these uses of `glitch' derive from the specific technical
   meaning the term has in the electronic hardware world, where it is
   now techspeak.  A glitch can occur when the inputs of a circuit
   change, and the outputs change to some {random} value for some
   very brief time before they settle down to the correct value.  If
   another circuit inspects the output at just the wrong time, reading
   the random value, the results can be very wrong and very hard to
   debug (a glitch is one of many causes of electronic {heisenbug}s).

:glob: /glob/, *not* /glohb/ [UNIX] vt.,n. To expand
   special characters in a wildcarded name, or the act of so doing
   (the action is also called `globbing').  The UNIX conventions for
   filename wildcarding have become sufficiently pervasive that many
   hackers use some of them in written English, especially in email or
   news on technical topics.  Those commonly encountered include the
   following:

     *
          wildcard for any string (see also {UN*X})
  
     ?
          wildcard for any single character (generally read this way
          only at the beginning or in the middle of a word)

     []
          delimits a wildcard matching any of the enclosed characters

     {}
          alternation of comma-separated alternatives; thus,
          `foo{baz,qux}' would be read as `foobaz' or `fooqux'

   Some examples: "He said his name was [KC]arl" (expresses
   ambiguity).  "I don't read talk.politics.*" (any of the
   talk.politics subgroups on {USENET}).  Other examples are given
   under the entry for {X}.  Note that glob patterns are similar,
   but not identical, to those used in {regexp}s.

   Historical note: The jargon usage derives from `glob', the
   name of a subprogram that expanded wildcards in archaic pre-Bourne
   versions of the UNIX shell.

:glork: /glork/ 1. interj. Term of mild surprise, usually tinged with
   outrage, as when one attempts to save the results of two hours of
   editing and finds that the system has just crashed.  2. Used as a
   name for just about anything.  See {foo}.  3. vt. Similar to
   {glitch}, but usually used reflexively.  "My program just glorked
   itself."  See also {glark}.

:glue: n. Generic term for any interface logic or protocol that
   connects two component blocks.  For example,  {Blue
   Glue} is IBM's SNA protocol, and hardware designers call anything
   used to connect large VLSI's or circuit blocks `glue logic'.

:gnarly: /nar'lee/ adj. Both {obscure} and {hairy} (sense
   1).  "{Yow!} --- the tuned assembler implementation of BitBlt
   is really gnarly!"  From a similar but less specific usage in
   surfer slang.

:GNU: /gnoo/, *not* /noo/ 1. [acronym: `GNU's Not UNIX!',
   see {{recursive acronym}}] A UNIX-workalike development effort of
   the Free Software Foundation headed by Richard Stallman
   <rms@gnu.ai.mit.edu>.  GNU EMACS and the GNU C compiler, two tools
   designed for this project, have become very popular in hackerdom
   and elsewhere.  The GNU project was designed partly to proselytize
   for RMS's position that information is community property and all
   software source should be shared.  One of its slogans is "Help
   stamp out software hoarding!"  Though this remains controversial
   (because it implicitly denies any right of designers to own,
   assign, and sell the results of their labors), many hackers who
   disagree with RMS have nevertheless cooperated to produce large
   amounts of high-quality software for free redistribution under the
   Free Software Foundation's imprimatur.  See {EMACS},
   {copyleft}, {General Public Virus}.  2. Noted UNIX hacker
   John Gilmore <gnu@toad.com>, founder of USENET's anarchic alt.*
   hierarchy.

:GNUMACS: /gnoo'maks/ [contraction of `GNU EMACS'] Often-heard
   abbreviated name for the {GNU} project's flagship tool, {EMACS}.
   Used esp. in contrast with {GOSMACS}.

:go flatline: [from cyberpunk SF, refers to flattening of EEG
   traces upon brain-death] vi., also adjectival `flatlined'. 1. To
   {die}, terminate, or fail, esp. irreversibly.  In hacker
   parlance, this is used of machines only, human death being
   considered somewhat too serious a matter to employ jargon-jokes
   about.  2. To go completely quiescent; said of machines undergoing
   controlled shutdown.  "You can suffer file damage if you shut down
   UNIX but power off before the system has gone flatline."  3. Of a
   video tube, to fail by losing vertical scan, so all one sees is a
   bright horizontal line bisecting the screen.

:go root: [UNIX] vi. To temporarily enter {root mode} in order
   to perform a privileged operation.  This use is deprecated in
   Australia, where v. `root' refers to animal sex.

:go-faster stripes: [UK] Syn. {chrome}.  Mainstream in some
   parts of UK. .

:gobble: vt. 1. To consume, usu. used with `up'.  "The output
   spy gobbles characters out of a {tty} output buffer."  2. To
   obtain, usu. used with `down'.  "I guess I'll gobble down a copy
   of the documentation tomorrow."  See also {snarf}.

:Godzillagram: /god-zil'*-gram/ n. [from Japan's national hero]
   1. A network packet that in theory is a broadcast to every machine
   in the universe.  The typical case is an IP datagram whose
   destination IP address is [255.255.255.255].  Fortunately, few
   gateways are foolish enough to attempt to implement this case!  2. A
   network packet of maximum size.  An IP Godzillagram has
   65,536 octets.

:golden: adj. [prob. from folklore's `golden egg'] When used to
   describe a magnetic medium (e.g., `golden disk', `golden tape'),
   describes one containing a tested, up-to-spec, ready-to-ship
   software version.  Compare {platinum-iridium}.

:golf-ball printer: n. The IBM 2741, a slow but letter-quality
   printing device and terminal based on the IBM Selectric
   typewriter.  The `golf ball' was a little spherical frob bearing
   reversed embossed images of 88 different characters arranged on
   four parallels of latitude; one could change the font by swapping
   in a different golf ball.  This was the technology that enabled APL
   to use a non-EBCDIC, non-ASCII, and in fact completely non-standard
   character set.  This put it 10 years ahead of its time --- where it
   stayed, firmly rooted, for the next 20, until character displays
   gave way to programmable bit-mapped devices with the flexibility to
   support other character sets.

:gonk: /gonk/ vt.,n. 1. To prevaricate or to embellish the truth
   beyond any reasonable recognition.  In German the term is
   (mythically) `gonken'; in Spanish the verb becomes `gonkar'.
   "You're gonking me.  That story you just told me is a bunch of
   gonk."  In German, for example, "Du gonkst mir" (You're pulling
   my leg).  See also {gonkulator}.  2. [British] To grab some
   sleep at an odd time; compare {gronk out}.

:gonkulator: /gon'kyoo-lay-tr/ [from the old "Hogan's Heroes" TV
   series] n. A pretentious piece of equipment that actually serves no
   useful purpose.  Usually used to describe one's least favorite
   piece of computer hardware.  See {gonk}.

:gonzo: /gon'zoh/ [from Hunter S. Thompson] adj. Overwhelming;
   outrageous; over the top; very large, esp. used of collections of
   source code, source files, or individual functions.  Has some of
   the connotations of {moby} and {hairy}, but without the
   implication of obscurity or complexity.

:Good Thing: n.,adj. Often capitalized; always pronounced as if
   capitalized.  1. Self-evidently wonderful to anyone in a position
   to notice: "The Trailblazer's 19.2Kbaud PEP mode with on-the-fly
   Lempel-Ziv compression is a Good Thing for sites relaying
   netnews."  2. Something that can't possibly have any ill
   side-effects and may save considerable grief later: "Removing the
   self-modifying code from that shared library would be a Good
   Thing."  3. When said of software tools or libraries, as in "YACC
   is a Good Thing", specifically connotes that the thing has
   drastically reduced a programmer's work load.  Oppose {Bad
   Thing}.

:gorets: /goh'rets/ n. The unknown ur-noun, fill in your own
   meaning.  Found esp. on the USENET newsgroup alt.gorets, which
   seems to be a running contest to redefine the word by implication
   in the funniest and most peculiar way, with the understanding that
   no definition is ever final.  [A correspondent from the Former
   Soviet Union informs me that `gorets' is Russian for `mountain
   dweller' --- ESR] Compare {frink}.

:gorilla arm: n. The side-effect that destroyed touch-screens as a
   mainstream input technology despite a promising start in the early
   1980s.  It seems the designers of all those {spiffy} touch-menu
   systems failed to notice that humans aren't designed to hold their
   arms in front of their faces making small motions.  After more than
   a very few selections, the arm begins to feel sore, cramped, and
   oversized --- the operator looks like a gorilla while using the
   touch screen and feels like one afterwards.  This is now considered
   a classic cautionary tale to human-factors designers; "Remember
   the gorilla arm!" is shorthand for "How is this going to fly in
   *real* use?".

:gorp: /gorp/ [CMU: perhaps from the canonical hiker's food, Good
   Old Raisins and Peanuts] Another {metasyntactic variable}, like
   {foo} and {bar}.

:GOSMACS: /goz'maks/ [contraction of `Gosling EMACS'] n. The first
   {EMACS}-in-C implementation, predating but now largely eclipsed by
   {GNUMACS}.  Originally freeware; a commercial version is now
   modestly popular as `UniPress EMACS'.  The author (James Gosling)
   went on to invent {NeWS}.

:Gosperism: /gos'p*r-izm/ A hack, invention, or saying due to
   arch-hacker R. William (Bill) Gosper.  This notion merits its own
   term because there are so many of them.  Many of the entries in
   {HAKMEM} are Gosperisms; see also {life}.

:gotcha: n. A {misfeature} of a system, especially a programming
   language or environment, that tends to breed bugs or mistakes
   because it both enticingly easy to invoke and completely unexpected
   and/or unreasonable in its outcome.  For example, a classic gotcha
   in {C} is the fact that `if (a=b) {code;}' is
   syntactically valid and sometimes even correct.  It puts the value
   of `b' into `a' and then executes `code' if
   `a' is non-zero.  What the programmer probably meant was
   `if (a==b) {code;}', which executes `code' if
   `a' and `b' are equal.

:GPL: /G-P-L/ n. Abbreviation for `General Public License' in
   widespread use; see {copyleft}, {General Public
   Virus}.

:GPV: /G-P-V/ n. Abbrev. for {General Public Virus} in
   widespread use.

:grault: /grawlt/ n. Yet another {metasyntactic variable}, invented by
   Mike Gallaher and propagated by the {GOSMACS} documentation.  See
   {corge}.

:gray goo: n. A hypothetical substance composed of {sagan}s of
   sub-micron-sized self-replicating robots programmed to make copies
   of themselves out of whatever is available.  The image that goes
   with the term is one of the entire biosphere of Earth being
   eventually converted to robot goo.  This is the simplest of the
   {{nanotechnology}} disaster scenarios, easily refuted by arguments
   from energy requirements and elemental abundances.  Compare {blue
   goo}.

:Great Renaming: n. The {flag day} in 1985 on which all of the
   non-local groups on the {USENET} had their names changed from
   the net.- format to the current multiple-hierarchies scheme.  Used
   esp. in discussing the history of newsgroup names.  "The oldest
   sources group is comp.sources.misc; before the Great Renaming,
   it was net.sources."

:Great Runes: n. Uppercase-only text or display messages.  Some
   archaic operating systems still emit these.  See also {runes},
   {smash case}, {fold case}.

   Decades ago, back in the days when it was the sole supplier of
   long-distance hardcopy transmittal devices, the Teletype
   Corporation was faced with a major design choice.  To shorten code
   lengths and cut complexity in the printing mechanism, it had been
   decided that teletypes would use a monocase font, either ALL UPPER
   or all lower.  The Question Of The Day was therefore, which one to
   choose.  A study was conducted on readability under various
   conditions of bad ribbon, worn print hammers, etc.  Lowercase won;
   it is less dense and has more distinctive letterforms, and is thus
   much easier to read both under ideal conditions and when the
   letters are mangled or partly obscured.  The results were filtered
   up through {management}.  The chairman of Teletype killed the
   proposal because it failed one incredibly important criterion:

        "It would be impossible to spell the name of the Deity
        correctly."

   In this way (or so, at least, hacker folklore has it) superstition
   triumphed over utility.  Teletypes were the major input devices on
   most early computers, and terminal manufacturers looking for
   corners to cut naturally followed suit until well into the 1970s.
   Thus, that one bad call stuck us with Great Runes for thirty years.

: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.

:great-wall: [from SF fandom] vi.,n. A mass expedition to an
   oriental restaurant, esp. one where food is served family-style
   and shared.  There is a common heuristic about the amount of food
   to order, expressed as "Get N - 1 entrees"; the value of N,
   which is the number of people in the group, can be inferred from
   context (see {N}).  See {{oriental food}}, {ravs},
   {stir-fried random}.

:Green Book: n. 1. One of the three standard {{PostScript}}
   references: `PostScript Language Program Design', bylined
   `Adobe Systems' (Addison-Wesley, 1988; QA76.73.P67P66 ISBN
   0-201-14396-8); see also {Red Book}, {Blue Book}, and the
   {White Book} (sense 2).  2. Informal name for one of the three
   standard references on SmallTalk: `Smalltalk-80: Bits of
   History, Words of Advice', by Glenn Krasner (Addison-Wesley, 1983;
   QA76.8.S635S58; ISBN 0-201-11669-3) (this, too, is associated with
   blue and red books).  3. The `X/Open Compatibility Guide', which
   defines an international standard {{UNIX}} environment that is a
   proper superset of POSIX/SVID; also includes descriptions of a
   standard utility toolkit, systems administrations features, and the
   like.  This grimoire is taken with particular seriousness in
   Europe.  See {Purple Book}.  4. The IEEE 1003.1 POSIX Operating
   Systems Interface standard has been dubbed "The Ugly Green
   Book".  5. Any of the 1992 standards issued by the CCITT's tenth
   plenary assembly.  These include, among other things, the
   X.400 email standard and the Group 1 through 4 fax standards.  See
   also {{book titles}}.

:green bytes: n. (also `green words') 1. Meta-information
   embedded in a file, such as the length of the file or its name; as
   opposed to keeping such information in a separate description file
   or record.  The term comes from an IBM user's group meeting
   (ca. 1962) at which these two approaches were being debated and the
   diagram of the file on the blackboard had the `green bytes' drawn
   in green.  2. By extension, the non-data bits in any
   self-describing format.  "A GIF file contains, among other things,
   green bytes describing the packing method for the image." Compare
   {out-of-band}, {zigamorph}, {fence} (sense 1).

:green card: n. [after the `IBM System/360 Reference Data'
   card] A summary of an assembly language, even if the color is not
   green.  Less frequently used now because of the decrease in the use
   of assembly language.  "I'll go get my green card so I can check
   the addressing mode for that instruction."  Some green cards are
   actually booklets.

   The original green card became a yellow card when the System/370
   was introduced, and later a yellow booklet.  An anecdote from IBM
   refers to a scene that took place in a programmers' terminal room
   at Yorktown in 1978.  A luser overheard one of the programmers ask
   another "Do you have a green card?"  The other grunted and
   passed the first a thick yellow booklet.  At this point the luser
   turned a delicate shade of olive and rapidly left the room, never
   to return..

:green lightning: [IBM] n. 1. Apparently random flashing streaks on
   the face of 3278-9 terminals while a new symbol set is being
   downloaded.  This hardware bug was left deliberately unfixed, as
   some genius within IBM suggested it would let the user know that
   `something is happening'.  That, it certainly does.  Later
   microprocessor-driven IBM color graphics displays were actually
   *programmed* to produce green lightning!  2. [proposed] Any
   bug perverted into an alleged feature by adroit rationalization or
   marketing.  "Motorola calls the CISC cruft in the 88000
   architecture `compatibility logic', but I call it green
   lightning".  See also {feature} (sense 6).

:green machine: n. A computer or peripheral device that has been
   designed and built to military specifications for field equipment
   (that is, to withstand mechanical shock, extremes of temperature
   and humidity, and so forth).  Comes from the olive-drab `uniform'
   paint used for military equipment.

:Green's Theorem: [TMRC] prov. For any story, in any group of
   people there will be at least one person who has not heard the
   story.  A refinement of the theorem states that there will be
   *exactly* one person (if there were more than one, it wouldn't be
   as bad to re-tell the story).  [The name of this theorem is a play
   on a fundamental theorem in calculus. --- ESR]

:grep: /grep/ [from the qed/ed editor idiom g/re/p , where
   re stands for a regular expression, to Globally search for the
   Regular Expression and Print the lines containing matches to it,
   via {{UNIX}} `grep(1)'] vt. To rapidly scan a file or set of
   files looking for a particular string or pattern (when browsing
   through a large set of files, one may speak of `grepping
   around').  By extension, to look for something by pattern.  "Grep
   the bulletin board for the system backup schedule, would you?"
   See also {vgrep}.

:grilf: // n.  Girl-friend.  Like {newsfroup} and {filk}, a
   typo incarnated as a new word.  Seems to have originated sometime
   in 1992.

:grind: vt. 1. [MIT and Berkeley] To prettify hardcopy of code,
   especially LISP code, by reindenting lines, printing keywords and
   comments in distinct fonts (if available), etc.  This usage was
   associated with the MacLISP community and is now rare;
   {prettyprint} was and is the generic term for such
   operations.  2. [UNIX] To generate the formatted version of a
   document from the {{nroff}}, {{troff}}, {{TeX}}, or Scribe
   source.  3. To run seemingly interminably, esp. (but not
   necessarily) if performing some tedious and inherently useless
   task.  Similar to {crunch} or {grovel}.  Grinding has a
   connotation of using a lot of CPU time, but it is possible to grind
   a disk, network, etc.  See also {hog}.  4. To make the whole
   system slow.  "Troff really grinds a PDP-11."  5. `grind grind'
   excl. Roughly, "Isn't the machine slow today!"

:grind crank: n. A mythical accessory to a terminal.  A crank on the
   side of a monitor, which when operated makes a zizzing noise and
   causes the computer to run faster.  Usually one does not refer to a
   grind crank out loud, but merely makes the appropriate gesture and
   noise.  See {grind} and {wugga wugga}.

   Historical note: At least one real machine actually had a grind
   crank --- the R1, a research machine built toward the end of the
   days of the great vacuum tube computers, in 1959.  R1 (also known
   as `The Rice Institute Computer' (TRIC) and later as `The Rice
   University Computer' (TRUC)) had a single-step/free-run switch for
   use when debugging programs.  Since single-stepping through a large
   program was rather tedious, there was also a crank with a cam and
   gear arrangement that repeatedly pushed the single-step button.
   This allowed one to `crank' through a lot of code, then slow
   down to single-step for a bit when you got near the code of
   interest, poke at some registers using the console typewriter, and
   then keep on cranking.

:gripenet: [IBM] n. A wry (and thoroughly unofficial) name for IBM's
   internal VNET system, deriving from its common use by IBMers to
   voice pointed criticism of IBM management that would be taboo in
   more formal channels.

:gritch: /grich/ 1. n. A complaint (often caused by a {glitch}).
   2. vi. To complain.  Often verb-doubled: "Gritch gritch".  3. A
   synonym for {glitch} (as verb or noun).

:grok: /grok/, var. /grohk/ [from the novel `Stranger in
   a Strange Land', by Robert A. Heinlein, where it is a Martian word
   meaning literally `to drink' and metaphorically `to be one
   with'] vt. 1. To understand, usually in a global sense.  Connotes
   intimate and exhaustive knowledge.  Contrast {zen}, which is similar
   supernal understanding experienced as a single brief flash.  See also
   {glark}.  2. Used of programs, may connote merely sufficient
   understanding.  "Almost all C compilers grok the `void' type
   these days."

:gronk: /gronk/ [popularized by Johnny Hart's comic strip
   "B.C." but the word apparently predates that] vt. 1. To
   clear the state of a wedged device and restart it.  More severe
   than `to {frob}' (sense 2).  2. [TMRC] To cut, sever, smash,
   or similarly disable.  3. The sound made by many 3.5-inch diskette
   drives.  In particular, the microfloppies on a Commodore Amiga go
   "grink, gronk".

:gronk out: vi. To cease functioning.  Of people, to go home and go
   to sleep.  "I guess I'll gronk out now; see you all tomorrow."

:gronked: adj. 1. Broken.  "The teletype scanner was gronked, so
   we took the system down."  2. Of people, the condition of feeling
   very tired or (less commonly) sick.  "I've been chasing that bug
   for 17 hours now and I am thoroughly gronked!"  Compare
   {broken}, which means about the same as {gronk} used of
   hardware, but connotes depression or mental/emotional problems in
   people.

:grovel: vi. 1. To work interminably and without apparent progress.
   Often used transitively with `over' or `through'.  "The file
   scavenger has been groveling through the /usr directories for 10
   minutes now."  Compare {grind} and {crunch}.  Emphatic form:
   `grovel obscenely'.  2. To examine minutely or in complete detail.
   "The compiler grovels over the entire source program before
   beginning to translate it."  "I grovelled through all the
   documentation, but I still couldn't find the command I wanted."

:grunge: /gruhnj/ n. 1. That which is grungy, or that which makes
   it so.  2. [Cambridge] Code which is inaccessible due to changes in
   other parts of the program.  The preferred term in North America is
   {dead code}.

:gubbish: /guhb'*sh/ [a portmanteau of `garbage' and
   `rubbish'; may have originated with SF author Philip K. Dick]
   n. Garbage; crap; nonsense.  "What is all this gubbish?"  The
   opposite portmanteau `rubbage' is also reported.

:guiltware: /gilt'weir/ n. 1. A piece of {freeware} decorated
   with a message telling one how long and hard the author worked on
   it and intimating that one is a no-good freeloader if one does not
   immediately send the poor suffering martyr gobs of money.
   2. {Shareware} that works.

: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'.

:gun: [ITS: from the `:GUN' command] vt. To forcibly
   terminate a program or job (computer, not career).  "Some idiot
   left a background process running soaking up half the cycles, so I
   gunned it."  Compare {can}.

:gunch: /guhnch/ [TMRC] vt. To push, prod, or poke at a device
   that has almost (but not quite) produced the desired result.
   Implies a threat to {mung}.

:gurfle: /ger'fl/ interj. An expression of shocked disbelief.  "He
   said we have to recode this thing in FORTRAN by next week.
   Gurfle!"  Compare {weeble}.

:guru: n. [UNIX] An expert.  Implies not only {wizard} skill but
   also a history of being a knowledge resource for others.  Less
   often, used (with a qualifier) for other experts on other systems,
   as in `VMS guru'.  See {source of all good bits}.

:guru meditation: n. Amiga equivalent of `panic' in UNIX
   (sometimes just called a `guru' or `guru event').  When the
   system crashes, a cryptic message of the form "GURU MEDITATION
   #XXXXXXXX.YYYYYYYY" may appear, 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 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.04.

: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 alive in late
   1991.  "I'm going to go gweep for a while. See you in the
   morning" "I gweep from 8 PM till 3 AM 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."

= H =
=====

:h: [from SF fandom] infix. A method of `marking' common words,
   i.e., calling attention to the fact that they are being used in a
   nonstandard, ironic, or humorous way.  Originated in the fannish
   catchphrase "Bheer is the One True Ghod!" from decades ago.
   H-infix marking of `Ghod' and other words spread into the 1960s
   counterculture via underground comix, and into early hackerdom
   either from the counterculture or from SF fandom (the three
   overlapped heavily at the time).  More recently, the h infix has
   become an expected feature of benchmark names (Dhrystone,
   Rhealstone, etc.); this is prob. patterning on the original
   Whetstone (the name of a laboratory) but influenced by the
   fannish/counterculture h infix.

:ha ha only serious: [from SF fandom, orig. as mutation of HHOK,
   `Ha Ha Only Kidding'] A phrase (often seen abbreviated as HHOS)
   that aptly captures the flavor of much hacker discourse.  Applied
   especially to parodies, absurdities, and ironic jokes that are both
   intended and perceived to contain a possibly disquieting amount of
   truth, or truths that are constructed on in-joke and self-parody.
   This lexicon contains many examples of ha-ha-only-serious in both
   form and content.  Indeed, the entirety of hacker culture is often
   perceived as ha-ha-only-serious by hackers themselves; to take it
   either too lightly or too seriously marks a person as an outsider,
   a {wannabee}, or in {larval stage}.  For further
   enlightenment on this subject, consult any Zen master.  See also
   {{Humor, Hacker}}, and {AI koans}.

:hack: 1. n. Originally, a quick job that produces what is needed,
   but not well.  2. n. An incredibly good, and perhaps very
   time-consuming, piece of work that produces exactly what is needed.
   3. vt. To bear emotionally or physically.  "I can't hack this
   heat!"  4. vt. To work on something (typically a program).  In an
   immediate sense: "What are you doing?"  "I'm hacking TECO."
   In a general (time-extended) sense: "What do you do around here?"
   "I hack TECO."  More generally, "I hack `foo'" is roughly
   equivalent to "`foo' is my major interest (or project)".  "I
   hack solid-state physics."  5. vt. To pull a prank on.  See
   sense 2 and {hacker} (sense 5).  6. vi. To interact with a
   computer in a playful and exploratory rather than goal-directed
   way.  "Whatcha up to?"  "Oh, just hacking."  7. n. Short for
   {hacker}.  8. See {nethack}.  9. [MIT] v. To explore
   the basements, roof ledges, and steam tunnels of a large,
   institutional building, to the dismay of Physical Plant workers and
   (since this is usually performed at educational institutions) the
   Campus Police.  This activity has been found to be eerily similar
   to playing adventure games such as Dungeons and Dragons and {Zork}.
   See also {vadding}.

   Constructions on this term abound.  They include `happy hacking'
   (a farewell), `how's hacking?' (a friendly greeting among
   hackers) and `hack, hack' (a fairly content-free but friendly
   comment, often used as a temporary farewell).  For more on this
   totipotent term see "{The Meaning of `Hack'}".  See
   also {neat hack}, {real hack}.

:hack attack: [poss. by analogy with `Big Mac Attack' from ads
   for the McDonald's fast-food chain; the variant `big hack attack'
   is reported] n. Nearly synonymous with {hacking run}, though the
   latter more strongly implies an all-nighter.

:hack mode: n. 1. What one is in when hacking, of course.  2. More
   specifically, a Zen-like state of total focus on The Problem that
   may be achieved when one is hacking (this is why every good hacker
   is part mystic).  Ability to enter such concentration at will
   correlates strongly with wizardliness; it is one of the most
   important skills learned during {larval stage}.  Sometimes
   amplified as `deep hack mode'.

   Being yanked out of hack mode (see {priority interrupt}) may be
   experienced as a physical shock, and the sensation of being in it
   is more than a little habituating.  The intensity of this
   experience is probably by itself sufficient explanation for the
   existence of hackers, and explains why many resist being promoted
   out of positions where they can code.  See also {cyberspace}
   (sense 2).

   Some aspects of hackish etiquette will appear quite odd to an
   observer unaware of the high value placed on hack mode.  For
   example, if someone appears at your door, it is perfectly okay to
   hold up a hand (without turning one's eyes away from the screen) to
   avoid being interrupted.  One may read, type, and interact with the
   computer for quite some time before further acknowledging the
   other's presence (of course, he or she is reciprocally free to
   leave without a word).  The understanding is that you might be in
   {hack mode} with a lot of delicate {state} (sense 2) in your
   head, and you dare not {swap} that context out until you have
   reached a good point to pause. See also {juggling eggs}.

:hack on: vt. To {hack}; implies that the subject is some
   pre-existing hunk of code that one is evolving, as opposed to
   something one might {hack up}.

:hack together: vt. To throw something together so it will work.
   Unlike `kluge together' or {cruft together}, this does not
   necessarily have negative connotations.

:hack up: vt. To {hack}, but generally implies that the result is
   a hack in sense 1 (a quick hack).  Contrast this with {hack on}.
   To `hack up on' implies a {quick-and-dirty} modification to an
   existing system.  Contrast {hacked up}; compare {kluge up},
   {monkey up}, {cruft together}.

:hack value: n. Often adduced as the reason or motivation for
   expending effort toward a seemingly useless goal, the point being
   that the accomplished goal is a hack.  For example, MacLISP had
   features for reading and printing Roman numerals, which were
   installed purely for hack value.  See {display hack} for one
   method of computing hack value, but this cannot really be
   explained, only experienced.  As Louis Armstrong once said when
   asked to explain jazz: "Man, if you gotta ask you'll never know."
   (Feminists please note Fats Waller's explanation of rhythm: "Lady,
   if you got to ask you ain't got it.")

:hacked off: [analogous to `pissed off'] adj. Said of system
   administrators who have become annoyed, upset, or touchy owing to
   suspicions that their sites have been or are going to be victimized
   by crackers, or used for inappropriate, technically illegal, or
   even overtly criminal activities.  For example, having unreadable
   files in your home directory called `worm', `lockpick', or `goroot'
   would probably be an effective (as well as impressively obvious and
   stupid) way to get your sysadmin hacked off at you.

:hacked up: adj. Sufficiently patched, kluged, and tweaked that the
   surgical scars are beginning to crowd out normal tissue (compare
   {critical mass}).  Not all programs that are hacked become
   `hacked up'; if modifications are done with some eye to coherence
   and continued maintainability, the software may emerge better for
   the experience.  Contrast {hack up}.

: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'.  The correct term is {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}.

:hacker ethic, the: n. 1. 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.  2. 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.
  
   Both of these normative ethical principles are widely, but by no
   means universally, accepted among hackers. Most hackers subscribe
   to the hacker ethic in sense 1, 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.

   Sense 2 is more controversial: some people consider the act of
   cracking itself to be unethical, like breaking and entering.
   But this principle 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 --- acting as an
   unpaid (and unsolicited) {tiger team}.

   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.

:hacking run: [analogy with `bombing run' or `speed run'] n. A
   hack session extended long outside normal working times, especially
   one longer than 12 hours.  May cause you to `change phase the hard
   way' (see {phase}).

:Hacking X for Y: [ITS] n. Ritual phrasing of part of the
   information which ITS made publicly available about each user.
   This information (the INQUIR record) was a sort of form in which
   the user could fill out various fields.  On display, two of these
   fields were always combined into a project description of the form
   "Hacking X for Y" (e.g., `"Hacking perceptrons for
   Minsky"').  This form of description became traditional and has
   since been carried over to other systems with more general
   facilities for self-advertisement (such as UNIX {plan
   file}s).

:Hackintosh: n. 1. An Apple Lisa that has been hacked into emulating a
   Macintosh (also called a `Mac XL').  2. A Macintosh assembled
   from parts theoretically belonging to different models in the line.

:hackish: /hak'ish/ adj. (also {hackishness} n.) 1. Said of
   something that is or involves a hack.  2. Of or pertaining to
   hackers or the hacker subculture.  See also {true-hacker}.

:hackishness: n. The quality of being or involving a hack.  This
   term is considered mildly silly.  Syn.  {hackitude}.

:hackitude: n. Syn. {hackishness}; this word is considered sillier.

:hair: [back-formation from {hairy}] n. The complications that
   make something hairy.  "Decoding {TECO} commands requires a
   certain amount of hair."  Often seen in the phrase `infinite
   hair', which connotes extreme complexity.  Also in `hairiferous'
   (tending to promote hair growth): "GNUMACS elisp encourages lusers
   to write complex editing modes."  "Yeah, it's pretty hairiferous
   all right." (or just: "Hair squared!")

: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}.

   A well-known result in topology called the Brouwer Fixed-Point
   Theorem states that any continuous transformation of a surface into
   itself has at least one fixed point.  Mathematically literate
   hackers tend to associate the term `hairy' with the informal
   version of this theorem; "You can't comb a hairy ball smooth."

   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.

:HAKMEM: /hak'mem/ n. MIT AI Memo 239 (February 1972).  A
   legendary collection of neat mathematical and programming hacks
   contributed by many people at MIT and elsewhere.  (The title of the
   memo really is "HAKMEM", which is a 6-letterism for `hacks
   memo'.)  Some of them are very useful techniques, powerful
   theorems, or interesting unsolved problems, but most fall into the
   category of mathematical and computer trivia.  Here is a sampling
   of the entries (with authors), slightly paraphrased:

   Item 41 (Gene Salamin): There are exactly 23,000 prime numbers less
   than 2^18.

   Item 46 (Rich Schroeppel): The most *probable* suit
   distribution in bridge hands is 4-4-3-2, as compared to 4-3-3-3,
   which is the most *evenly* distributed.  This is because the
   world likes to have unequal numbers: a thermodynamic effect saying
   things will not be in the state of lowest energy, but in the state
   of lowest disordered energy.

   Item 81 (Rich Schroeppel): Count the magic squares of order 5
   (that is, all the 5-by-5 arrangements of the numbers from 1 to 25
   such that all rows, columns, and diagonals add up to the same
   number).  There are about 320 million, not counting those that
   differ only by rotation and reflection.

   Item 154 (Bill Gosper): The myth that any given programming
   language is machine independent is easily exploded by computing the
   sum of powers of 2.  If the result loops with period = 1
   with sign +, you are on a sign-magnitude machine.  If the
   result loops with period = 1 at -1, you are on a
   twos-complement machine.  If the result loops with period greater
   than 1, including the beginning, you are on a ones-complement
   machine.  If the result loops with period greater than 1, not
   including the beginning, your machine isn't binary --- the pattern
   should tell you the base.  If you run out of memory, you are on a
   string or bignum system.  If arithmetic overflow is a fatal error,
   some fascist pig with a read-only mind is trying to enforce machine
   independence.  But the very ability to trap overflow is machine
   dependent.  By this strategy, consider the universe, or, more
   precisely, algebra: Let X = the sum of many powers of 2 =
   ...111111.  Now add X to itself:
   X + X = ...111110 Thus, 2X = X - 1, so
   X = -1.  Therefore algebra is run on a machine (the
   universe) that is two's-complement.

   Item 174 (Bill Gosper and Stuart Nelson): 21963283741 is the only
   number such that if you represent it on the {PDP-10} as both an
   integer and a floating-point number, the bit patterns of the two
   representations are identical.

   Item 176 (Gosper): The "banana phenomenon" was encountered when
   processing a character string by taking the last 3 letters typed
   out, searching for a random occurrence of that sequence in the
   text, taking the letter following that occurrence, typing it out,
   and iterating.  This ensures that every 4-letter string output
   occurs in the original.  The program typed BANANANANANANANA....  We
   note an ambiguity in the phrase, "the Nth occurrence of."  In one
   sense, there are five 00's in 0000000000; in another, there are
   nine.  The editing program TECO finds five.  Thus it finds only the
   first ANA in BANANA, and is thus obligated to type N next.  By
   Murphy's Law, there is but one NAN, thus forcing A, and thus a
   loop.  An option to find overlapped instances would be useful,
   although it would require backing up N - 1 characters before
   seeking the next N-character string.

   Note: This last item refers to a {Dissociated Press}
   implementation.  See also {banana problem}.

   HAKMEM also contains some rather more complicated mathematical and
   technical items, but these examples show some of its fun flavor.

:hakspek: /hak'speek/ n. A shorthand method of spelling found on
   many British academic bulletin boards and {talker system}s.
   Syllables and whole words in a sentence are replaced by single
   ASCII characters the names of which are phonetically similar or
   equivalent, while multiple letters are usually dropped.  Hence,
   `for' becomes `4'; `two', `too', and `to' become `2'; `ck'
   becomes `k'.  "Before I see you tomorrow" becomes "b4 i c u
   2moro".  First appeared in London about 1986, and was probably
   caused by the slowness of available talker systems, which
   operated on archaic machines with outdated operating systems and
   no standard methods of communication.  Has become rarer since.
   See also {talk mode}.

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

:hamster: n. 1. [Fairchild] A particularly slick little piece of
   code that does one thing well; a small, self-contained hack.  The
   image is of a hamster happily spinning its exercise wheel.  2. A
   tailless mouse; that is, one with an infrared link to a receiver on
   the machine, as opposed to the conventional cable.  3. [UK] Any
   item of hardware made by Amstrad, a company famous for its cheap
   plastic PC-almost-compatibles.

:hand cruft: [pun on `hand craft'] vt. See {cruft}, sense 3.

:hand-hacking: n. 1. The practice of translating {hot spot}s from
   an {HLL} into hand-tuned assembler, as opposed to trying to
   coerce the compiler into generating better code.  Both the term and
   the practice are becoming uncommon.  See {tune}, {bum}, {by
   hand}; syn. with v. {cruft}.  2. More generally, manual
   construction or patching of data sets that would normally be
   generated by a translation utility and interpreted by another
   program, and aren't really designed to be read or modified by
   humans.

:handle: n. 1. [from CB slang] 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 Citizen'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.  2. [Mac] A pointer to a
   pointer to dynamically-allocated memory; the extra level of
   indirection allows on-the-fly memory compaction (to cut down on
   fragmentation) or aging out of unused resources, with minimal
   impact on the (possibly multiple) parts of the larger program
   containing references to the allocated memory.  Compare {snap}
   (to snap a handle would defeat its purpose); see also {aliasing
   bug}, {dangling pointer}.

:hand-roll: [from obs. mainstream slang `hand-rolled' in
   opposition to `ready-made', referring to cigarettes] v. To
   perform a normally automated software installation or configuration
   process {by hand}; implies that the normal process failed due to
   bugs in the configurator or was defeated by something exceptional
   in the local environment.  "The worst thing about being a gateway
   between four different nets is having to hand-roll a new sendmail
   configuration every time any of them upgrades."

:handshaking: n. Hardware or software activity designed to start or
   keep two machines or programs in synchronization as they {do
   protocol}.  Often applied to human activity; thus, a hacker might
   watch two people in conversation nodding their heads to indicate
   that they have heard each others' points and say "Oh, they're
   handshaking!".  See also {protocol}.

:handwave: [poss. from gestures characteristic of stage magicians]
   1. v. To gloss over a complex point; to distract a listener; to
   support a (possibly actually valid) point with blatantly faulty
   logic.  2. n. The act of handwaving.  "Boy, what a handwave!"

   If someone starts a sentence with "Clearly..." or
   "Obviously..." or "It is self-evident that...", it is
   a good bet he is about to handwave (alternatively, use of these
   constructions in a sarcastic tone before a paraphrase of someone
   else's argument suggests that it is a handwave).  The theory behind
   this term is that if you wave your hands at the right moment, the
   listener may be sufficiently distracted to not notice that what you
   have said is {bogus}.  Failing that, if a listener does object,
   you might try to dismiss the objection with a wave of your hand.

   The use of this word is often accompanied by gestures: both hands
   up, palms forward, swinging the hands in a vertical plane pivoting
   at the elbows and/or shoulders (depending on the magnitude of the
   handwave); alternatively, holding the forearms in one position
   while rotating the hands at the wrist to make them flutter.  In
   context, the gestures alone can suffice as a remark; if a speaker
   makes an outrageously unsupported assumption, you might simply wave
   your hands in this way, as an accusation, far more eloquent than
   words could express, that his logic is faulty.

:hang: v. 1. To wait for an event that will never occur.  "The
   system is hanging because it can't read from the crashed drive".
   See {wedged}, {hung}.  2. To wait for some event to occur; to
   hang around until something happens.  "The program displays a menu
   and then hangs until you type a character."  Compare {block}.
   3. To attach a peripheral device, esp. in the construction `hang
   off':  "We're going to hang another tape drive off the file
   server."  Implies a device attached with cables, rather than
   something that is strictly inside the machine's chassis.

:Hanlon's Razor: prov. A corollary of {Finagle's Law}, similar to
   Occam's Razor, that reads "Never attribute to malice that which can
   be adequately explained by stupidity."  The derivation of the
   common title Hanlon's Razor is unknown; a similar epigram has been
   attributed to William James.  Quoted here because it seems to be a
   particular favorite of hackers, often showing up in {fortune
   cookie} files and the login banners of BBS systems and commercial
   networks.  This probably reflects the hacker's daily experience of
   environments created by well-intentioned but short-sighted people. 
   Compare {Sturgeon's Law}.

:happily: adv.  Of software, used to emphasize that a program is
   unaware of some important fact about its environment, either
   because it has been fooled into believing a lie, or because it
   doesn't care.  The sense of `happy' here is not that of elation,
   but rather that of blissful ignorance.  "The program continues to
   run, happily unaware that its output is going to /dev/null."

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

:hard boot: n. See {boot}.

:hardcoded: adj. 1. Said of data inserted directly into a program,
   where it cannot be easily modified, as opposed to data in some
   {profile}, resource (see {de-rezz} sense 2), or environment
   variable that a {user} or hacker can easily modify.  2. In C,
   this is esp. applied to use of a literal instead of a
   `#define' macro (see {magic number}).

:hardwarily: /hard-weir'*-lee/ adv. In a way pertaining to
   hardware.  "The system is hardwarily unreliable."  The adjective
   `hardwary' is *not* traditionally used, though it has recently
   been reported from the U.K.  See {softwarily}.

:hardwired: adj. 1. In software, syn. for {hardcoded}.  2. By
   extension, anything that is not modifiable, especially in the sense
   of customizable to one's particular needs or tastes.

:has the X nature: [seems to derive from Zen Buddhist koans of the
   form "Does an X have the Buddha-nature?"] adj. Common hacker
   construction for `is an X', used for humorous emphasis.  "Anyone
   who can't even use a program with on-screen help embedded in it
   truly has the {loser} nature!"  See also {the X that can be Y
   is not the true X}.

:hash bucket: n. A notional receptacle into which more than one
   thing accessed by the same key or short code might be dropped.
   When you look up a name in the phone book (for example), you
   typically hash it by extracting its first letter; the hash buckets
   are the alphabetically ordered letter sections.  This is used as
   techspeak with respect to code that uses actual hash functions; in
   jargon, it is used for human associative memory as well.  Thus, two
   things `in the same hash bucket' may be confused with each other.
   "If you hash English words only by length, you get too many common
   grammar words in the first couple of hash buckets." Compare {hash
   collision}.

:hash collision: [from the technical usage] n. (var. `hash
   clash') When used of people, signifies a confusion in associative
   memory or imagination, especially a persistent one (see
   {thinko}).  True story: One of us [ESR] was once on the phone
   with a friend about to move out to Berkeley.  When asked what he
   expected Berkeley to be like, the friend replied: "Well, I have
   this mental picture of naked women throwing Molotov cocktails, but
   I think that's just a collision in my hash tables."  Compare
   {hash bucket}.

:hat: n. Common (spoken) name for the circumflex (`^', ASCII
   1011110) character.  See {ASCII} for other synonyms.

:HCF: /H-C-F/ n. Mnemonic for `Halt and Catch Fire', any of
   several undocumented and semi-mythical machine instructions with
   destructive side-effects, supposedly included for test purposes on
   several well-known architectures going as far back as the IBM 360.
   The MC6800 microprocessor was the first for which an HCF opcode
   became widely known.  This instruction caused the processor to
   {toggle} a subset of the bus lines as rapidly as it could; in
   some configurations this could actually cause lines to burn
   up.

:heads down: [Sun] adj. Concentrating, usually so heavily and for so
   long that everything outside the focus area is missed.  See also
   {hack mode} and {larval stage}, although it is not confined to
   fledgling hackers.

:heartbeat: n. 1. The signal emitted by a Level 2 Ethernet
   transceiver at the end of every packet to show that the
   collision-detection circuit is still connected.  2. A periodic
   synchronization signal used by software or hardware, such as a bus
   clock or a periodic interrupt.  3. The `natural' oscillation
   frequency of a computer's clock crystal, before frequency division
   down to the machine's clock rate.  4. A signal emitted at regular
   intervals by software to demonstrate that it is still alive.
   Sometimes hardware is designed to reboot the machine if it stops
   hearing a heartbeat.  See also {breath-of-life packet}.

:heatseeker: [IBM] n. A customer who can be relied upon to buy,
   without fail, the latest version of an existing product (not quite
   the same as a member the {lunatic fringe}).  A 1993 example of a
   heatseeker is someone who, owning a 286 PC and Windows 3.0, goes
   out and buys Windows 3.1 (which offers no worthwhile benefits
   unless you have a 386).  If all customers were heatseekers, vast
   amounts of money could be made by just fixing the bugs in each
   release (n) and selling it to them as release (n+1).

:heavy metal: [Cambridge] n. Syn. {big iron}.

:heavy wizardry: n. Code or designs that trade on a particularly
   intimate knowledge or experience of a particular operating system
   or language or complex application interface.  Distinguished from
   {deep magic}, which trades more on arcane *theoretical*
   knowledge.  Writing device drivers is heavy wizardry; so is
   interfacing to {X} (sense 2) without a toolkit.  Esp. found in
   comments similar to "Heavy wizardry begins here ...".  Compare
   {voodoo programming}.

:heavyweight: adj. High-overhead; {baroque}; code-intensive;
   featureful, but costly.  Esp. used of communication protocols,
   language designs, and any sort of implementation in which maximum
   generality and/or ease of implementation has been pushed at the
   expense of mundane considerations such as speed, memory
   utilization, and startup time.  {EMACS} is a heavyweight editor;
   {X} is an *extremely* heavyweight window system.  This term
   isn't pejorative, but one hacker's heavyweight is another's
   {elephantine} and a third's {monstrosity}.  Oppose
   `lightweight'.  Usage: now borders on techspeak, especially in
   the compound `heavyweight process'.

:heisenbug: /hi:'zen-buhg/ [from Heisenberg's Uncertainty
   Principle in quantum physics] n. A bug that disappears or alters
   its behavior when one attempts to probe or isolate it.  Antonym of
   {Bohr bug}; see also {mandelbug}, {schroedinbug}.  In C,
   nine out of ten heisenbugs result from either {fandango on core}
   phenomena (esp. lossage related to corruption of the malloc
   {arena}) or errors that {smash the stack}.

:Helen Keller mode: n. 1. State of a hardware or software system
   that is deaf, dumb, and blind, i.e., accepting no input and
   generating no output, usually due to an infinite loop or some other
   excursion into {deep space}.  (Unfair to the real Helen Keller,
   whose success at learning speech was triumphant.)  See also
   {go flatline}, {catatonic}.  2. On IBM PCs under DOS, refers
   to a specific failure mode in which a screen saver has kicked in
   over an {ill-behaved} application which bypasses the interrupts
   the screen saver watches for activity.  Your choices are to try to
   get from the program's current state through a successful
   save-and-exit without being able to see what you're doing, or
   re-boot the machine.  This isn't (strictly speaking) a crash.

:hello, sailor!: interj. Occasional West Coast equivalent of
   {hello, world}; seems to have originated at SAIL, later
   associated with the game {Zork} (which also included "hello,
   aviator" and "hello, implementor").  Originally from the
   traditional hooker's greeting to a swabbie fresh off the boat, of
   course.

:hello, wall!: excl. See {wall}.

:hello, world: interj. 1. The canonical minimal test message in the
   C/UNIX universe.  2. Any of the minimal programs that emit this
   message.  Traditionally, the first program a C coder is supposed to
   write in a new environment is one that just prints "hello, world"
   to standard output (and indeed it is the first example program
   in {K&R}).  Environments that generate an unreasonably large
   executable for this trivial test or which require a {hairy}
   compiler-linker invocation to generate it are considered to
   {lose} (see {X}).  3. Greeting uttered by a hacker making an
   entrance or requesting information from anyone present.  "Hello,
   world!  Is the {VAX} back up yet?"

:hex: n. 1. Short for {{hexadecimal}}, base 16.  2. A 6-pack
   of anything (compare {quad}, sense 2).  Neither usage has
   anything to do with {magic} or {black art}, though the pun is
   appreciated and occasionally used by hackers.  True story: As a
   joke, some hackers once offered some surplus ICs for sale to be
   worn as protective amulets against hostile magic.  The chips were,
   of course, hex inverters.

:hexadecimal:: n. Base 16.  Coined in the early 1960s to replace
   earlier `sexadecimal', which was too racy and amusing for stuffy
   IBM, and later adopted by the rest of the industry.

   Actually, neither term is etymologically pure.  If we take
   `binary' to be paradigmatic, the most etymologically correct
   term for base 10, for example, is `denary', which comes from
   `deni' (ten at a time, ten each), a Latin `distributive'
   number; the corresponding term for base-16 would be something like
   `sendenary'.  `Decimal' is from an ordinal number; the
   corresponding prefix for 6 would imply something like
   `sextidecimal'.  The `sexa-' prefix is Latin but incorrect in
   this context, and `hexa-' is Greek.  The word `octal' is
   similarly incorrect; a correct form would be `octaval' (to go
   with decimal), or `octonary' (to go with binary).  If anyone ever
   implements a base-3 computer, computer scientists will be faced
   with the unprecedented dilemma of a choice between two
   *correct* forms; both `ternary' and `trinary' have a
   claim to this throne.

:hexit: /hek'sit/ n. A hexadecimal digit (0--9, and A--F or a--f).
   Used by people who claim that there are only *ten* digits,
   dammit; sixteen-fingered human beings are rather rare, despite what
   some keyboard designs might seem to imply (see {space-cadet
   keyboard}).

:HHOK: See {ha ha only serious}.

:HHOS: See {ha ha only serious}.

:hidden flag: [scientific computation] n. An extra option added to a
   routine without changing the calling sequence.  For example,
   instead of adding an explicit input variable to instruct a routine
   to give extra diagnostic output, the programmer might just add a
   test for some otherwise meaningless feature of the existing inputs,
   such as a negative mass.  Liberal use of hidden flags can make a
   program very hard to debug and understand.

:high bit: [from `high-order bit'] n. 1. The most significant
   bit in a byte.  2. By extension, the most significant part of
   something other than a data byte: "Spare me the whole {saga},
   just give me the high bit."  See also {meta bit}, {hobbit},
   {dread high-bit disease}, and compare the mainstream slang
   `bottom line'.

:high moby: /hi:' mohb'ee/ n. The high half of a 512K
   {PDP-10}'s physical address space; the other half was of course
   the low moby.  This usage has been generalized in a way that has
   outlasted the {PDP-10}; for example, at the 1990 Washington D.C.
   Area Science Fiction Conclave (Disclave), when a miscommunication
   resulted in two separate wakes being held in commemoration of the
   shutdown of MIT's last {{ITS}} machines, the one on the upper
   floor was dubbed the `high moby' and the other the `low moby'.
   All parties involved {grok}ked this instantly.  See {moby}.

:highly: [scientific computation] adv. The preferred modifier for
   overstating an understatement.  As in: `highly nonoptimal', the
   worst possible way to do something; `highly nontrivial', either
   impossible or requiring a major research project; `highly
   nonlinear', completely erratic and unpredictable; `highly
   nontechnical', drivel written for {luser}s, oversimplified to the
   point of being misleading or incorrect (compare {drool-proof
   paper}).  In other computing cultures, postfixing of {in the
   extreme} might be preferred.

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

:hirsute: adj. Occasionally used humorously as a synonym for {hairy}.

:HLL: /H-L-L/ n. [High-Level Language (as opposed to assembler)]
   Found primarily in email and news rather than speech.  Rarely, the
   variants `VHLL' and `MLL' are found.  VHLL stands for
   `Very-High-Level Language' and is used to describe a
   {bondage-and-discipline language} that the speaker happens to
   like; Prolog and Backus's FP are often called VHLLs.  `MLL' stands
   for `Medium-Level Language' and is sometimes used half-jokingly to
   describe {C}, alluding to its `structured-assembler' image.
   See also {languages of choice}.

:hobbit: n. 1. The High Order Bit of a byte; same as the {meta
   bit} or {high bit}.  2. The non-ITS name of vad@ai.mit.edu
   (*Hobbit*), master of lasers.

:hog: n.,vt. 1. Favored term to describe programs or hardware that
   seem to eat far more than their share of a system's resources,
   esp. those which noticeably degrade interactive response.
   *Not* used of programs that are simply extremely large or
   complex or that are merely painfully slow themselves (see {pig,
   run like a}).  More often than not encountered in qualified forms,
   e.g., `memory hog', `core hog', `hog the processor', `hog
   the disk'.  "A controller that never gives up the I/O bus
   gets killed after the bus-hog timer expires."   2. Also said
   of *people* who use more than their fair share of resources
   (particularly disk, where it seems that 10% of the people use 90%
   of the disk, no matter how big the disk is or how many people use
   it).  Of course, once disk hogs fill up one filesystem, they
   typically find some other new one to infect, claiming to the
   sysadmin that they have an important new project to complete.

:holy wars: [from {USENET}, but may predate it] n. {flame
   war}s over {religious issues}.  The paper by Danny Cohen that
   popularized the terms {big-endian} and {little-endian} in
   connection with the LSB-first/MSB-first controversy was entitled
   "On Holy Wars and a Plea for Peace".  Other perennial Holy
   Wars have included {EMACS} vs. {vi}, my personal computer vs.
   everyone else's personal computer, {{ITS}} vs. {{UNIX}},
   {{UNIX}} vs. {VMS}, {BSD} UNIX vs. {USG UNIX}, {C} vs.
   {{Pascal}}, {C} vs. {LISP}, etc., ad nauseam.  The
   characteristic that distinguishes holy wars from normal
   technical disputes is that in a holy wars most of the participants
   spend their time trying to pass off personal value choices and
   cultural attachments as objective technical evaluations. See also
   {theology}.

:home box: n. A hacker's personal machine, especially one he or she
   owns.  "Yeah?  Well, *my* home box runs a full 4.2 BSD, so
   there!"

:home machine: n. 1. Syn. {home box}.  2. The machine that
   receives your email.  These senses might be distinct, for example,
   for a hacker who owns one computer at home, but reads email at
   work.
:hook: n. A software or hardware feature included in order to
   simplify later additions or changes by a user.  For example, a
   simple program that prints numbers might always print them in base
   10, but a more flexible version would let a variable determine what
   base to use; setting the variable to 5 would make the program print
   numbers in base 5.  The variable is a simple hook.  An even more
   flexible program might examine the variable and treat a value of 16
   or less as the base to use, but treat any other number as the
   address of a user-supplied routine for printing a number.  This is
   a {hairy} but powerful hook; one can then write a routine to
   print numbers as Roman numerals, say, or as Hebrew characters, and
   plug it into the program through the hook.  Often the difference
   between a good program and a superb one is that the latter has
   useful hooks in judiciously chosen places.  Both may do the
   original job about equally well, but the one with the hooks is much
   more flexible for future expansion of capabilities ({EMACS}, for
   example, is *all* hooks).  The term `user exit' is
   synonymous but much more formal and less hackish.

:hop: n. One file transmission in a series required to get a file
   from point A to point B on a store-and-forward network.  On such
   networks (including {UUCPNET} and {FidoNet}), the important
   inter-machine metric is the number of hops in the shortest path
   between them, rather than their geographical separation.  See
   {bang path}.

:hose: 1. vt. To make non-functional or greatly degraded in
   performance.  "That big ray-tracing program really hoses the
   system."  See {hosed}.  2. n. A narrow channel through which
   data flows under pressure.  Generally denotes data paths that
   represent performance bottlenecks.  3. n. Cabling, especially
   thick Ethernet cable.  This is sometimes called `bit hose' or
   `hosery' (play on `hosiery') or `etherhose'.  See also
   {washing machine}.

:hosed: adj. Same as {down}.  Used primarily by UNIX hackers.
   Humorous: also implies a condition thought to be relatively easy to
   reverse.  Probably derived from the Canadian slang `hoser'
   popularized by the Bob and Doug Mackenzie skits on SCTV.  See
   {hose}.  It is also widely used of people in the mainstream sense
   of `in an extremely unfortunate situation'.

   Once upon a time, a Cray that had been experiencing periodic
   difficulties crashed, and it was announced to have been hosed.
   It was discovered that the crash was due to the disconnection of
   some coolant hoses.  The problem was corrected, and users were then
   assured that everything was OK because the system had been rehosed.
   See also {dehose}.

:hot spot: n. 1. [primarily used by C/UNIX programmers, but
   spreading] It is received wisdom that in most programs, less than
   10% of the code eats 90% of the execution time; if one were to
   graph instruction visits versus code addresses, one would typically
   see a few huge spikes amidst a lot of low-level noise.  Such spikes
   are called `hot spots' and are good candidates for heavy
   optimization or {hand-hacking}.  The term is especially used of
   tight loops and recursions in the code's central algorithm, as
   opposed to (say) initial set-up costs or large but infrequent I/O
   operations.  See {tune}, {bum}, {hand-hacking}.  2. The
   active location of a cursor on a bit-map display.  "Put the
   mouse's hot spot on the `ON' widget and click the left button."
   3. A screen region that is sensitive to mouse clicks, which trigger
   some action.  Hypertext help screens are an example, in which a hot
   spot exists in the vicinity of any word for which additional
   material is available.  4. In a massively parallel computer with
   shared memory, the one location that all 10,000 processors are
   trying to read or write at once (perhaps because they are all doing
   a {busy-wait} on the same lock).

:house wizard: [prob. from ad-agency lingo, `house freak'] n. A
   hacker occupying a technical-specialist, R&D, or systems position
   at a commercial shop.  A really effective house wizard can have
   influence out of all proportion to his/her ostensible rank and
   still not have to wear a suit.  Used esp. of UNIX wizards.  The
   term `house guru' is equivalent.

:HP-SUX: /H-P suhks/ n. Unflattering hackerism for HP-UX,
   Hewlett-Packard's UNIX port, which features some truly unique bogosities
   in the filesystem internals and elsewhere (these occasionally create
   portability problems).  HP-UX is often referred to as `hockey-pux'
   inside HP, and one respondent claims that the proper pronunciation
   is /H-P ukkkhhhh/ as though one were about to spit.  Another such
   alternate spelling and pronunciation is "H-PUX" /H-puhks/.
   Hackers at HP/Apollo (the former Apollo Computers which was
   swallowed by HP in 1989) have been heard to complain that
   Mr. Packard should have pushed to have his name first, if for no
   other reason than the greater eloquence of the resulting acronym.
   Compare {AIDX}, {buglix}.  See also {Nominal Semidestructor},
   {Telerat}, {Open DeathTrap}, {ScumOS}, {sun-stools},
   {terminak}.

:huff: v. To compress data using a Huffman code.  Various programs
   that use such methods have been called `HUFF' or some variant
   thereof.  Oppose {puff}.  Compare {crunch}, {compress}.

:humma: // excl. A filler word used on various `chat' and
   `talk' programs when you had nothing to say but felt that it was
   important to say something.  The word apparently originated (at
   least with this definition) on the MECC Timeshare System (MTS, a
   now-defunct educational time-sharing system running in Minnesota
   during the 1970s and the early 1980s) but was later sighted on
   early UNIX systems.

:Humor, Hacker:: n. A distinctive style of shared intellectual
   humor found among hackers, having the following marked
   characteristics:

   1. Fascination with form-vs.-content jokes, paradoxes, and humor
   having to do with confusion of metalevels (see {meta}).  One way
   to make a hacker laugh: hold a red index card in front of him/her
   with "GREEN" written on it, or vice-versa (note, however, that
   this is funny only the first time).

   2. Elaborate deadpan parodies of large intellectual constructs,
   such as specifications (see {write-only memory}), standards
   documents, language descriptions (see {INTERCAL}), and even
   entire scientific theories (see {quantum bogodynamics},
   {computron}).

   3. Jokes that involve screwily precise reasoning from bizarre,
   ludicrous, or just grossly counter-intuitive premises.

   4. Fascination with puns and wordplay.

   5. A fondness for apparently mindless humor with subversive
   currents of intelligence in it --- for example, old Warner Brothers
   and Rocky & Bullwinkle cartoons, the Marx brothers, the early
   B-52s, and Monty Python's Flying Circus.  Humor that combines this
   trait with elements of high camp and slapstick is especially
   favored.

   6. References to the symbol-object antinomies and associated ideas
   in Zen Buddhism and (less often) Taoism.  See {has the X nature},
   {Discordianism}, {zen}, {ha ha only serious}, {AI koans}.

   See also {filk}, {retrocomputing}, and {Appendix B}.  If you
   have an itchy feeling that all 6 of these traits are really aspects
   of one thing that is incredibly difficult to talk about exactly,
   you are (a) correct and (b) responding like a hacker.  These traits
   are also recognizable (though in a less marked form) throughout
   {{science-fiction fandom}}.

:hung: [from `hung up'] adj. Equivalent to {wedged}, but more
   common at UNIX/C sites.  Not generally used of people.  Syn. with
   {locked up}, {wedged}; compare {hosed}.  See also {hang}.
   A hung state is distinguished from {crash}ed or {down}, where the
   program or system is also unusable but because it is not running
   rather than because it is waiting for something.  However, the
   recovery from both situations is often the same.

:hungry puppy: n. Syn. {slopsucker}.

:hungus: /huhng'g*s/ [perhaps related to slang `humongous'] adj.
   Large, unwieldy, usually unmanageable.  "TCP is a hungus piece of
   code."  "This is a hungus set of modifications."

:hyperspace: /hi:'per-spays/ n. A memory location that is *far*
   away from where the program counter should be pointing, often
   inaccessible because it is not even mapped in.  "Another core
   dump --- looks like the program jumped off to hyperspace
   somehow."  (Compare {jump off into never-never land}.)  This
   usage is from the SF notion of a spaceship jumping `into
   hyperspace', that is, taking a shortcut through higher-dimensional
   space --- in other words, bypassing this universe.  The variant
   `east hyperspace' is recorded among CMU and Bliss hackers.

:hysterical reasons: (also `hysterical raisins') n.  A variant on
   the stock phrase "for historical reasons", it specifically
   indicates that something must be done in some stupid way for
   backwards compatibility, and moreover that the feature it must be
   compatible with was the result of a bad design in the first place.
   "All IBM PC video adapters have to support MDA text mode for
   hysterical reasons."  Compare {bug-for-bug compatible}.

= I =
=====

:I didn't change anything!: interj. An aggrieved cry often heard as
   bugs manifest during a regression test.  The {canonical} reply to
   this assertion is "Then it works just the same as it did before,
   doesn't it?"  See also {one-line fix}.  This is also heard from
   applications programmers trying to blame an obvious applications
   problem on an unrelated systems software change, for example a
   divide-by-0 fault after terminals were added to a network.
   Usually, their statement is found to be false.  Upon close
   questioning, they will admit some major restructuring of the
   program that shouldn't have broken anything, in their opinion,
   but which actually {hosed} the code completely.

:I see no X here.: Hackers (and the interactive computer games they
   write) traditionally favor this slightly marked usage over other
   possible equivalents such as "There's no X here!" or "X is
   missing."  or "Where's the X?".  This goes back to the original
   PDP-10 {ADVENT}, which would respond in this wise if you asked
   it to do something involving an object not present at your location
   in the game.

:IBM: /I-B-M/ Inferior But Marketable; It's Better Manually;
   Insidious Black Magic; It's Been Malfunctioning; Incontinent Bowel
   Movement; and a near-{infinite} number of even less complimentary
   expansions, including `International Business Machines'.  See
   {TLA}.  These abbreviations illustrate the considerable
   antipathy most hackers have long felt toward the `industry leader'
   (see {fear and loathing}).

   What galls hackers about most IBM machines above the PC level isn't
   so much that they are underpowered and overpriced (though that does
   count against them), but that the designs are incredibly archaic,
   {crufty}, and {elephantine} ... and you can't *fix* them
   --- source code is locked up tight, and programming tools are
   expensive, hard to find, and bletcherous to use once you've found
   them.  With the release of the UNIX-based RIOS family this may have
   begun to change --- but then, we thought that when the PC-RT came
   out, too.

   In the spirit of universal peace and brotherhood, this lexicon now
   includes a number of entries attributed to `IBM'; these derive from
   some rampantly unofficial jargon lists circulated within IBM's own
   beleaguered hacker underground.

:IBM discount: n. A price increase.  Outside IBM, this derives from
   the common perception that IBM products are generally overpriced
   (see {clone}); inside, it is said to spring from a belief that
   large numbers of IBM employees living in an area cause prices to
   rise.

: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.

:ice: [coined by USENETter Tom Maddox, popularized by William
   Gibson's cyberpunk SF novels: a contrived acronym for `Intrusion
   Countermeasure Electronics'] Security software (in Gibson's novels,
   software that responds to intrusion by attempting to literally kill
   the intruder).  Also, `icebreaker': a program designed for
   cracking security on a system.

   Neither term is in serious use yet as of mid-1993, but many hackers
   find the metaphor attractive, and each may develop a denotation in
   the future. In the meantime, the speculative usage chould be
   confused with `ICE', an acronym for "in-circuit emulator".

:idempotent: [from mathematical techspeak] adj. Acting as if used
   only once, even if used multiple times.  This term is often used
   with respect to {C} header files, which contain common
   definitions and declarations to be included by several source
   files.  If a header file is ever included twice during the same
   compilation (perhaps due to nested #include files), compilation
   errors can result unless the header file has protected itself
   against multiple inclusion; a header file so protected is said to
   be idempotent.  The term can also be used to describe an
   initialization subroutine that is arranged to perform some
   critical action exactly once, even if the routine is called several
   times.

:If you want X, you know where to find it.: There is a legend that
   Dennis Ritchie, inventor of {C}, once responded to demands for
   features resembling those of what at the time was a much more
   popular language by observing "If you want PL/I, you know where to
   find it."  Ever since, this has been hackish standard form for
   fending off requests to alter a new design to mimic some older
   (and, by implication, inferior and {baroque}) one.  The case X =
   {Pascal} manifests semi-regularly on USENET's comp.lang.c
   newsgroup.  Indeed, the case X = X has been reported in
   discussions of graphics software (see {X}).

:ifdef out: /if'def owt/ v. Syn. for {condition out}, specific
   to {C}.

:ill-behaved: adj. 1. [numerical analysis] Said of an algorithm or
   computational method that tends to blow up because of accumulated
   roundoff error or poor convergence properties.  2. Software that
   bypasses the defined {OS} interfaces to do things (like screen,
   keyboard, and disk I/O) itself, often in a way that depends on the
   hardware of the machine it is running on or which is nonportable or
   incompatible with other pieces of software.  In the IBM PC/MS-DOS
   world, there is a folk theorem (nearly true) to the effect that
   (owing to gross inadequacies and performance penalties in the OS
   interface) all interesting applications are ill-behaved.  See also
   {bare metal}. Oppose {well-behaved}, compare {PC-ism}.  See
   {mess-dos}.

:IMHO: // [from SF fandom via USENET; abbreviation for `In My Humble
   Opinion']  "IMHO, mixed-case C names should be avoided, as
   mistyping something in the wrong case can cause hard-to-detect
   errors --- and they look too Pascalish anyhow."  Also seen in
   variant forms such as IMNSHO (In My Not-So-Humble Opinion) and IMAO
   (In My Arrogant Opinion).

:Imminent Death Of The Net Predicted!: [USENET] prov.  Since
   {USENET} first got off the ground in 1980--81, it has grown
   exponentially, approximately doubling in size every year.  On the
   other hand, most people feel the {signal-to-noise ratio} of
   USENET has dropped steadily.  These trends led, as far back as
   mid-1983, to predictions of the imminent collapse (or death) of the
   net.  Ten years and numerous doublings later, enough of these
   gloomy prognostications have been confounded that the phrase
   "Imminent Death Of The Net Predicted!" has become a running joke,
   hauled out any time someone grumbles about the {S/N ratio} or
   the huge and steadily increasing volume or the possible loss of a
   key node or link, or the potential for lawsuits when ignoramuses
   post copyrighted material, etc., etc., etc.

:in the extreme: adj. A preferred superlative suffix for many hackish
   terms.  See, for example, `obscure in the extreme' under {obscure},
   and compare {highly}.

:inc: /ink/ v. Common verbal shorthand for increment, i.e.
   `increase by one' (one doesn't tend to see the sbbreviation in
   writing or email).  Especially used by assembly programmers, as many
   assembly languages (including those for Intel chips) have an
   `inc' mnemonic.  Antonym: {dec}.

:incantation: n. Any particularly arbitrary or obscure command that
   one must mutter at a system to attain a desired result.  Not used
   of passwords or other explicit security features.  Especially used
   of tricks that are so poorly documented they must be learned from a
   {wizard}.  "This compiler normally locates initialized data
   in the data segment, but if you {mutter} the right incantation they
   will be forced into text space."

:include: vt. [USENET] 1. To duplicate a portion (or whole) of
   another's message (typically with attribution to the source) in a
   reply or followup, for clarifying the context of one's response.
   See the the discussion of inclusion styles under "Hacker
   Writing Style".  2. [from {C}] `#include <disclaimer.h>'
   has appeared in {sig block}s to refer to a notional `standard
   {disclaimer} file'.

:include war: n. Excessive multi-leveled including within a
   discussion {thread}, a practice that tends to annoy readers.  In
   a forum with high-traffic newsgroups, such as USENET, this can lead
   to {flame}s and the urge to start a {kill file}.

:indent style: [C programmers] n. The rules one uses to indent code
   in a readable fashion; a subject of {holy wars}.  There are four
   major C indent styles, described below; all have the aim of
   making it easier for the reader to visually track the scope of
   control constructs.  The significant variable is the placement of
   `{' and `}' with respect to the statement(s) they
   enclose and the guard or controlling statement (`if',
   `else', `for', `while', or `do') on the block,
   if any.

   `K&R style' --- Named after Kernighan & Ritchie, because the
   examples in {K&R} are formatted this way.  Also called `kernel
   style' because the UNIX kernel is written in it, and the `One True
   Brace Style' (abbrev. 1TBS) by its partisans.  The basic indent
   shown here is eight spaces (or one tab) per level; four are
   occasionally seen, but are much less common.

     if (cond) {
             <body>
     }

   `Allman style' --- Named for Eric Allman, a Berkeley hacker who
   wrote a lot of the BSD utilities in it (it is sometimes called
   `BSD style').  Resembles normal indent style in Pascal and Algol.
   Basic indent per level shown here is eight spaces, but four is just
   as common (esp. in C++ code).

     if (cond)
     {
             <body>
     }

   `Whitesmiths style' --- popularized by the examples that came
   with Whitesmiths C, an early commercial C compiler.  Basic indent
   per level shown here is eight spaces, but four is occasionally
   seen.

     if (cond)
             {
             <body>
             }

   `GNU style' --- Used throughout GNU EMACS and the Free Software
   Foundation code, and just about nowhere else.  Indents are always
   four spaces per level, with `{' and `}' halfway between the
   outer and inner indent levels.

     if (cond)
       {
         <body>
       }

   Surveys have shown the Allman and Whitesmiths styles to be the most
   common, with about equal mind shares.  K&R/1TBS used to be nearly
   universal, but is now much less common (the opening brace tends to
   get lost against the right paren of the guard part in an `if'
   or `while', which is a {Bad Thing}).  Defenders of 1TBS
   argue that any putative gain in readability is less important than
   their style's relative economy with vertical space, which enables
   one to see more code on one's screen at once.  Doubtless these
   issues will continue to be the subject of {holy wars}.

:index: n. See {coefficient of X}.

:infant mortality: n. It is common lore among hackers (and in the
   electronics industry at large; this term is possibly techspeak by
   now) that the chances of sudden hardware failure drop off
   exponentially with a machine's time since power-up (that is, until
   the relatively distant time at which enough mechanical wear in I/O
   devices and thermal-cycling stress in components has accumulated
   for the machine to start going senile).  Up to half of all chip and
   wire failures happen within a new system's first few weeks; such
   failures are often referred to as `infant mortality' problems
   (or, occasionally, as `sudden infant death syndrome').  See
   {bathtub curve}, {burn-in period}.

:infinite: adj. Consisting of a large number of objects; extreme.
   Used very loosely as in: "This program produces infinite
   garbage."  "He is an infinite loser."  The word most likely to
   follow `infinite', though, is {hair} (it has been pointed out
   that fractals are an excellent example of infinite hair).  These
   uses are abuses of the word's mathematical meaning.  The term
   `semi-infinite', denoting an immoderately large amount of some
   resource, is also heard.  "This compiler is taking a semi-infinite
   amount of time to optimize my program."  See also {semi}.

:infinite loop: n. One that never terminates (that is, the machine
   {spin}s or {buzz}es forever and goes {catatonic}).  There
   is a standard joke that has been made about each generation's
   exemplar of the ultra-fast machine: "The Cray-3 is so fast it can
   execute an infinite loop in under 2 seconds!"

:Infinite-Monkey Theorem: n. "If you put an {infinite} number
   of monkeys at typewriters, eventually one will bash out the script
   for Hamlet."  (One may also hypothesize a small number of monkeys
   and a very long period of time.)  This theorem asserts nothing about
   the intelligence of the one {random} monkey that eventually
   comes up with the script (and note that the mob will also type out
   all the possible *incorrect* versions of Hamlet).  It may be
   referred to semi-seriously when justifying a {brute force}
   method; the implication is that, with enough resources thrown at
   it, any technical challenge becomes a {one-banana problem}.

   This theorem was first popularized by the classic SF short story
   "Inflexible Logic" by Russell Maloney, many younger hackers
   know it through a reference in Douglas Adams's `Hitchhiker's
   Guide to the Galaxy'.

:infinity: n. 1. The largest value that can be represented in a
   particular type of variable (register, memory location, data type,
   whatever).  2. `minus infinity': The smallest such value, not
   necessarily or even usually the simple negation of plus infinity.
   In N-bit twos-complement arithmetic, infinity is
   2^(N-1) - 1 but minus infinity is - (2^(N-1)),
   not -(2^(N-1) - 1).  Note also that this is different from
   "time T equals minus infinity", which is closer to a
   mathematician's usage of infinity.

: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}.

:insanely great: adj. [Mac community, from Steve Jobs; also BSD UNIX
   people via Bill Joy] Something so incredibly {elegant} that it is
   imaginable only to someone possessing the most puissant of
   {hacker}-natures.

:INTERCAL: /in't*r-kal/ [said by the authors to stand for
   `Compiler Language With No Pronounceable Acronym'] n. A
   computer language designed by Don Woods and James Lyon in 1972.
   INTERCAL is purposely different from all other computer
   languages in all ways but one; it is purely a written language,
   being totally unspeakable.  An excerpt from the INTERCAL Reference
   Manual will make the style of the language clear:

     It is a well-known and oft-demonstrated fact that a person whose
     work is incomprehensible is held in high esteem.  For example, if
     one were to state that the simplest way to store a value of 65536
     in a 32-bit INTERCAL variable is:

          DO :1 <- #0$#256

     any sensible programmer would say that that was absurd.  Since this
     is indeed the simplest method, the programmer would be made to look
     foolish in front of his boss, who would of course have happened to
     turn up, as bosses are wont to do.  The effect would be no less
     devastating for the programmer having been correct.

   INTERCAL has many other peculiar features designed to make it even
   more unspeakable.  The Woods-Lyons implementation was actually used
   by many (well, at least several) people at Princeton.  The language
   has been recently reimplemented as C-INTERCAL and is consequently
   enjoying an unprecedented level of unpopularity; there is even an
   alt.lang.intercal newsgroup devoted to the study and ...
   appreciation of the language on USENET.

:interesting: adj. In hacker parlance, this word has strong
   connotations of `annoying', or `difficult', or both.  Hackers
   relish a challenge, and enjoy wringing all the irony possible out
   of the ancient Chinese curse "May you live in interesting times".
   Oppose {trivial}, {uninteresting}.

:Internet address:: n. 1. [techspeak] An absolute network address of
   the form foo@bar.baz, where foo is a user name, bar is a
   {sitename}, and baz is a `domain' name, possibly including
   periods itself.  Contrast with {bang path}; see also {network,
   the} and {network address}.  All Internet machines and most UUCP
   sites can now resolve these addresses, thanks to a large amount of
   behind-the-scenes magic and PD software written since 1980 or so.
   See also {bang path}, {domainist}.  2. More loosely, any
   network address reachable through Internet; this includes {bang
   path} addresses and some internal corporate and government
   networks.

   Reading Internet addresses is something of an art.  Here are the
   four most important top-level functional Internet domains followed
   by a selection of geographical domains:

     com
          commercial organizations
     edu
          educational institutions
     gov
          U.S. government civilian sites
     mil
          U.S. military sites

   Note that most of the sites in the com and edu domains are in
   the U.S. or Canada.

     us
          sites in the U.S. outside the functional domains
     su
          sites in the ex-Soviet Union (see {kremvax}).
     uk
          sites in the United Kingdom

   Within the us domain, there are subdomains for the fifty
   states, each generally with a name identical to the state's postal
   abbreviation.  Within the uk domain, there is an ac subdomain for
   academic sites and a co domain for commercial ones.  Other
   top-level domains may be divided up in similar ways.

:interrupt: 1. [techspeak] n. On a computer, an event that
   interrupts normal processing and temporarily diverts
   flow-of-control through an "interrupt handler" routine.  See also
   {trap}.  2. interj. A request for attention from a hacker.
   Often explicitly spoken.  "Interrupt --- have you seen Joe
   recently?"  See {priority interrupt}.  3. Under MS-DOS, the
   term `interrupt' is nearly synonymous with `system call', because
   the OS and BIOS routines are both called using the INT instruction
   (see {{interrupt list, the}}) and because programmers so often have
   to bypass the OS (going directly to a BIOS interrupt) to get
   reasonable performance.

:interrupt list, the:: [MS-DOS] n. The list of all known software
   interrupt calls (both documented and undocumented) for IBM PCs and
   compatibles, maintained and made available for free redistribution
   by Ralf Brown <ralf@cs.cmu.edu>.  As of late 1992, it had grown to
   approximately two megabytes in length.

:interrupts locked out: adj. When someone is ignoring you.  In a
   restaurant, after several fruitless attempts to get the waitress's
   attention, a hacker might well observe "She must have interrupts
   locked out".  The synonym `interrupts disabled' is also common.
   Variations abound; "to have one's interrupt mask bit set" and
   "interrupts masked out" is also heard.  See also {spl}.

:IRC: /I-R-C/ [Internet Relay Chat] n. A worldwide "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}.
   
:iron: n. Hardware, especially older and larger hardware of
   {mainframe} class with big metal cabinets housing relatively
   low-density electronics (but the term is also used of modern
   supercomputers).  Often in the phrase {big iron}.  Oppose
   {silicon}.  See also {dinosaur}.

:Iron Age: n. In the history of computing, 1961--1971 --- the
   formative era of commercial {mainframe} technology, when {big
   iron} {dinosaur}s ruled the earth.  These began with the delivery
   of the first PDP-1, coincided with the dominance of ferrite
   {core}, and ended with the introduction of the first commercial
   microprocessor (the Intel 4004) in 1971.  See also {Stone Age};
   compare {elder days}.

:iron box: [UNIX/Internet] n. A special environment set up to trap
   a {cracker} logging in over remote connections long enough to be
   traced.  May include a modified {shell} restricting the cracker's
   movements in unobvious ways, and `bait' files designed to keep
   him interested and logged on.  See also {back door},
   {firewall machine}, {Venus flytrap}, and Clifford Stoll's
   account in `{The Cuckoo's Egg}' of how he made and used
   one (see the Bibliography in appendix C).  Compare {padded
   cell}.

:ironmonger: [IBM] n. Derogatory.  A hardware specialist.  Compare
   {sandbender}, {polygon pusher}.

:ITS:: /I-T-S/ n. 1. Incompatible Time-sharing System, an
   influential but highly idiosyncratic operating system written for
   PDP-6s and PDP-10s at MIT and long used at the MIT AI Lab.  Much
   AI-hacker jargon derives from ITS folklore, and to have been `an
   ITS hacker' qualifies one instantly as an old-timer of the most
   venerable sort.  ITS pioneered many important innovations,
   including transparent file sharing between machines and
   terminal-independent I/O.  After about 1982, most actual work was
   shifted to newer machines, with the remaining ITS boxes run
   essentially as a hobby and service to the hacker community.  The
   shutdown of the lab's last ITS machine in May 1990 marked the end
   of an era and sent old-time hackers into mourning nationwide (see
   {high moby}).  The Royal Institute of Technology in Sweden is
   maintaining one `live' ITS site at its computer museum (right next
   to the only TOPS-10 system still on the Internet), so ITS is still
   alleged to hold the record for OS in longest continuous use
   (however, {{WAITS}} is a credible rival for this palm).  See
   {Appendix A}.  2. A mythical image of operating-system perfection
   worshiped by a bizarre, fervent retro-cult of old-time hackers and
   ex-users (see {troglodyte}, sense 2).  ITS worshipers manage
   somehow to continue believing that an OS maintained by
   assembly-language hand-hacking that supported only monocase
   6-character filenames in one directory per account remains superior
   to today's state of commercial art (their venom against UNIX is
   particularly intense).  See also {holy wars},
   {Weenix}.

:IWBNI: // [abbreviation] `It Would Be Nice If'.  Compare {WIBNI}.

:IYFEG: // [USENET] Abbreviation for `Insert Your Favorite Ethnic
   Group'.  Used as a meta-name when telling ethnic jokes on the net
   to avoid offending anyone.  See {JEDR}.

= J =
=====

:J. Random: /J rand'm/ n. [generalized from {J. Random Hacker}]
   Arbitrary; ordinary; any one; any old.  `J. Random' is often
   prefixed to a noun to make a name out of it.  It means roughly
   `some particular' or `any specific one'.  "Would you let
   J. Random Loser marry your daughter?"  The most common uses are
   `J. Random Hacker', `J. Random Loser', and `J. Random Nerd'
   ("Should J. Random Loser be allowed to {gun} down other
   people?"), but it can be used simply as an elaborate version of
   {random} in any sense.

:J. Random Hacker: [MIT] /J rand'm hak'r/ n. A mythical figure
   like the Unknown Soldier; the archetypal hacker nerd.  See
   {random}, {Suzie COBOL}.  This may originally have been
   inspired by `J. Fred Muggs', a show-biz chimpanzee whose name was a
   household word back in the early days of {TMRC}, and was
   probably influenced by `J. Presper Eckert' (one of the co-inventors
   of the electronic computer).

: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 and IRC fans and younger hackers on BBS
   systems.

:jaggies: /jag'eez/ n. The `stairstep' effect observable when an
   edge (esp. a linear edge of very shallow or steep slope) is
   rendered on a pixel device (as opposed to a vector display).

:JCL: /J-C-L/ n. 1. IBM's supremely {rude} Job Control
   Language.  JCL is the script language used to control the execution
   of programs in IBM's batch systems.  JCL has a very {fascist}
   syntax, and some versions will, for example, {barf} if two
   spaces appear where it expects one.  Most programmers confronted
   with JCL simply copy a working file (or card deck), changing the
   file names.  Someone who actually understands and generates unique
   JCL is regarded with the mixed respect one gives to someone who
   memorizes the phone book.  It is reported that hackers at IBM
   itself sometimes sing "Who's the breeder of the crud that mangles
   you and me?  I-B-M, J-C-L, M-o-u-s-e" to the tune of the
   "Mickey Mouse Club" theme to express their opinion of the
   beast.  2. A comparative for any very {rude} software that a
   hacker is expected to use.  "That's as bad as JCL."  As with
   {COBOL}, JCL is often used as an archetype of ugliness even by
   those who haven't experienced it.  See also {IBM}, {fear and
   loathing}.

:JEDR: // n. Synonymous with {IYFEG}.  At one time, people in
   the USENET newsgroup rec.humor.funny tended to use `JEDR'
   instead of {IYFEG} or `<ethnic>'; this stemmed from a public
   attempt to suppress the group once made by a loser with initials
   JEDR after he was offended by an ethnic joke posted there.  (The
   practice was {retcon}ned by the expanding these initials as
   `Joke Ethnic/Denomination/Race'.)  After much sound and fury JEDR
   faded away; this term appears to be doing likewise.  JEDR's only
   permanent effect on the net.culture was to discredit
   `sensitivity' arguments for censorship so thoroughly that more
   recent attempts to raise them have met with immediate and
   near-universal rejection.

:JFCL: /jif'kl/, /jaf'kl/, /j*-fi'kl/ vt., obs. (alt.
   `jfcl') To cancel or annul something.  "Why don't you jfcl that
   out?"  The fastest do-nothing instruction on older models of the
   PDP-10 happened to be JFCL, which stands for "Jump if Flag set and
   then CLear the flag"; this does something useful, but is a very
   fast no-operation if no flag is specified.  Geoff Goodfellow, one
   of the jargon-1 co-authors, had JFCL on the license plate of his
   BMW for years.  Usage: rare except among old-time PDP-10
   hackers.

:jiffy: n. 1. The duration of one tick of the system clock on the
   computer (see {tick}).  Often one AC cycle time (1/60 second in
   the U.S. and Canada, 1/50 most other places), but more recently
   1/100 sec has become common.  "The swapper runs every 6 jiffies"
   means that the virtual memory management routine is executed once
   for every 6 ticks of the clock, or about ten times a second.
   2. Confusingly, the term is sometimes also used for a 1-millisecond
   {wall time} interval.  Even more confusingly, physicists
   semi-jokingly use `jiffy' to mean the time required for light to
   travel one foot in a vacuum, which turns out to be close to one
   *nanosecond*.  3. Indeterminate time from a few seconds to
   forever.  "I'll do it in a jiffy" means certainly not now and
   possibly never.  This is a bit contrary to the more widespread use
   of the word.  Oppose {nano}. See also {Real Soon Now}.

:job security: n. When some piece of code is written in a
   particularly {obscure} fashion, and no good reason (such as time
   or space optimization) can be discovered, it is often said that the
   programmer was attempting to increase his job security (i.e., by
   making himself indispensable for maintenance).  This sour joke
   seldom has to be said in full; if two hackers are looking over some
   code together and one points at a section and says "job security",
   the other one may just nod.

:jock: n. 1. A programmer who is characterized by large and somewhat
   brute-force programs.  See {brute force}.  2. When modified by
   another noun, describes a specialist in some particular computing
   area.  The compounds `compiler jock' and `systems jock' seem to be
   the best-established examples of this.

:joe code: /joh' kohd`/ n. 1. Code that is overly {tense} and
   unmaintainable.  "{Perl} may be a handy program, but if you look
   at the source, it's complete joe code."  2. Badly written,
   possibly buggy code.

   Correspondents wishing to remain anonymous have fingered a
   particular Joe at the Lawrence Berkeley Laboratory and observed
   that usage has drifted slightly; the original sobriquet `Joe code'
   was intended in sense 1.

:jolix: n. /joh'liks/ n.,adj. 386BSD, the freeware port of the
   BSD Net/2 release to the Intel i386 architecture by Bill Jolitz and
   friends.  Used to differentiate from BSDI's port based on the same
   source tape, which is called BSD/386.  See {BSD}.

:JR[LN]: /J-R-L/, /J-R-N/ n. The names JRL and JRN were
   sometimes used as example names when discussing a kind of user ID
   used under {{TOPS-10}} and {WAITS}; they were understood to be
   the initials of (fictitious) programmers named `J. Random Loser'
   and `J. Random Nerd' (see {J. Random}).  For example, if one
   said "To log in, type log one comma jay are en" (that is,
   "log 1,JRN"), the listener would have understood that he should
   use his own computer ID in place of `JRN'.

:JRST: /jerst/ [based on the PDP-10 jump instruction] v.,obs. To
   suddenly change subjects, with no intention of returning to the
   previous topic.  Usage: rather rare except among PDP-10 diehards,
   and considered silly.  See also {AOS}.

:juggling eggs: vi. Keeping a lot of {state} in your head while
   modifying a program.  "Don't bother me now, I'm juggling eggs",
   means that an interrupt is likely to result in the program's being
   scrambled.  In the classic first-contact SF novel `The Mote in
   God's Eye', by Larry Niven and Jerry Pournelle, an alien describes
   a very difficult task by saying "We juggle priceless eggs in
   variable gravity."  That is a very hackish use of language.  See
   also {hack mode}.

:jump off into never-never land: [from J. M. Barrie's `Peter
   Pan'] v. Same as {branch to Fishkill}, but more common in
   technical cultures associated with non-IBM computers that use the
   term `jump' rather than `branch'.  Compare {hyperspace}.

: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 =
=====

:K: /K/ [from {kilo-}] n. A kilobyte.  This is used both as a
   spoken word and a written suffix (like {meg} and {gig} for
   megabyte and gigabyte).  See {{quantifiers}}.

:K&R: [Kernighan and Ritchie] n. Brian Kernighan and Dennis Ritchie's
   book `The C Programming Language', esp. the classic and influential
   first edition (Prentice-Hall 1978; ISBN 0-113-110163-3).  Syn.
   {White Book}, {Old Testament}.  See also {New Testament}.

:kahuna: /k*-hoo'nuh/ [IBM: from the Hawaiian title for a shaman] n.
   Synonym for {wizard}, {guru}.

:kamikaze packet: n. The `official' jargon for what is more commonly
   called a {Christmas tree packet}. {RFC}-1025, `TCP and IP Bake Off'
   says:

     10 points for correctly being able to process a "Kamikaze"
     packet (AKA nastygram, christmas tree packet, lamp test
     segment, et al.).  That is, correctly handle a segment with the
     maximum combination of features at once (e.g., a SYN URG PUSH
     FIN segment with options and data).

   See also {Chernobyl packet}.

:kangaroo code: n. Syn. {spaghetti code}.

:ken: /ken/ n. 1. [UNIX] Ken Thompson, principal inventor of
   UNIX.  In the early days he used to hand-cut distribution tapes,
   often with a note that read "Love, ken".  Old-timers still use
   his first name (sometimes uncapitalized, because it's a login name
   and mail address) in third-person reference; it is widely
   understood (on USENET, in particular) that without a last name
   `Ken' refers only to Ken Thompson.  Similarly, Dennis without last
   name means Dennis Ritchie (and he is often known as dmr).  See
   also {demigod}, {{UNIX}}.  2. A flaming user.  This was
   originated by the Software Support group at Symbolics because the
   two greatest flamers in the user community were both named Ken.

:kgbvax: /K-G-B'vaks/ n. See {kremvax}.

:KIBO: /ki:'boh/ 1. [acronym] Knowledge In, Bullshit Out.  A
   summary of what happens whenever valid data is passed through an
   organization (or person) that deliberately or accidentally
   disregards or ignores its significance.  Consider, for example,
   what an advertising campaign can do with a product's actual
   specifications.  Compare {GIGO}; see also {SNAFU principle}.
   2. James Parry <kibo@world.std.com>, a USENETter infamous for
   various surrealist net.pranks and an uncanny, machine-assisted
   knack for joining any thread in which his nom de guerre is
   mentioned.

: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.  Compare
   {gun}.
   
:kill file: [USENET] n. (alt. `KILL file') Per-user file(s) used
   by some {USENET} reading programs (originally Larry Wall's
   `rn(1)') to discard summarily (without presenting for reading)
   articles matching some particularly uninteresting (or unwanted)
   patterns of subject, author, or other header lines.  Thus to add
   a person (or subject) to one's kill file is to arrange for that
   person to be ignored by one's newsreader in future.  By extension,
   it may be used for a decision to ignore the person or subject in
   other media.  See also {plonk}.

:killer micro: [popularized by Eugene Brooks] n. A
   microprocessor-based machine that infringes on mini, mainframe, or
   supercomputer performance turf.  Often heard in "No one will
   survive the attack of the killer micros!", the battle cry of the
   downsizers.  Used esp. of RISC architectures.

   The popularity of the phrase `attack of the killer micros' is
   doubtless reinforced by the movie title "Attack Of The Killer
   Tomatoes" (one of the {canonical} examples of
   so-bad-it's-wonderful among hackers).  This has even more flavor
   now that killer micros have gone on the offensive not just
   individually (in workstations) but in hordes (within massively
   parallel computers).

:killer poke: n. A recipe for inducing hardware damage on a machine
   via insertion of invalid values (see {poke}) in a memory-mapped
   control register; used esp. of various fairly well-known tricks
   on {bitty box}es without hardware memory management (such as the
   IBM PC and Commodore PET) that can overload and trash analog
   electronics in the monitor.  See also {HCF}.

:kilo-: [SI] pref. See {{quantifiers}}.

:KIPS: /kips/ [abbreviation, by analogy with {MIPS} using {K}] n.
   Thousands (*not* 1024s) of Instructions Per Second.  Usage:
   rare.

:KISS Principle: /kis' prin'si-pl/ n. "Keep It Simple, Stupid".
   A maxim often invoked when discussing design to fend off
   {creeping featurism} and control development complexity.
   Possibly related to the {marketroid} maxim on sales
   presentations, "Keep It Short and Simple".

:kit: [USENET; poss. fr. DEC slang for a full software
   distribution, as opposed to a patch or upgrade] n. A source
   software distribution that has been packaged in such a way that it
   can (theoretically) be unpacked and installed according to a series
   of steps using only standard UNIX tools, and entirely documented by
   some reasonable chain of references from the top-level {README
   file}.  The more general term {distribution} may imply that
   special tools or more stringent conditions on the host environment
   are required.

:klone: /klohn/ n. See {clone}, sense 4.

:kludge: /klooj/ or /kluhj/ n. Common (but incorrect) variant
   of {kluge}, q.v.

: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.  Other
   sources report that `kluge' was common Navy slang in the WWII era
   for any piece of electronics that worked well on shore but
   consistently failed at sea.

   However, there is reason to believe this slang use may be a decade
   older.  Several respondents have connected it to the brand name of
   a device called a "Kluge paper feeder" dating back at least to
   1935, an adjunct to mechanical printing presses.  The Kluge feeder
   was designed before small, cheap electric motors and control
   electronics; it relied on a fiendishly complex assortment of cams,
   belts, and linkages to both power and synchronize all its
   operations from one motive driveshaft.  It was accordingly
   tempermental, subject to frequent breakdowns, and devilishly
   difficult to repair --- but oh, so clever!  One traditional
   folk etymology of `kluge' makes it the name of a design engineer;
   in fact, `Kluge' is a surname in German, and the designer of the
   Kluge feeder may well have been the man behind this myth.

   {TMRC} and the MIT hacker culture of the early '60s seems to
   have developed in a milieu that remembered and still used some WII
   military slang (see also {foobar}).  It seems likely that
   `kluge' came to MIT via alumni of the many military electronics
   projects that had been located in Cambridge (many in MIT's
   venerable Building 20, in which {TMRC} is also located) during
   the war.

   The variant `kludge' was apparently popularized by the
   {Datamation} article mentioned above; it was titled "How
   to Design a Kludge" (February 1962, pp. 30, 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 1993, 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.

:kluge around: vt. To avoid a bug or difficult condition by
   inserting a {kluge}.  Compare {workaround}.

:kluge up: vt. To lash together a quick hack to perform a task; this
   is milder than {cruft together} and has some of the connotations
   of {hack up} (note, however, that the construction `kluge on'
   corresponding to {hack on} is never used).  "I've kluged up this
   routine to dump the buffer contents to a safe place."

:Knights of the Lambda Calculus: n. A semi-mythical organization of
   wizardly LISP and Scheme hackers.  The name refers to a
   mathematical formalism invented by Alonzo Church, with which LISP
   is intimately connected.  There is no enrollment list and the
   criteria for induction are unclear, but one well-known LISPer has
   been known to give out buttons and, in general, the *members*
   know who they are....

:Knuth: /nooth/ [Donald E. Knuth's `The Art of Computer
   Programming'] n. Mythically, the reference that answers all
   questions about data structures or algorithms.  A safe answer when
   you do not know: "I think you can find that in Knuth."  Contrast
   {literature, the}.  See also {bible}.

: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}.  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 were proved devastatingly accurate --- 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.

:kyrka: /shir'k*/ [Swedish] n. See {feature key}.
= L =
=====

:lace card: n. obs. A {{punched card}} with all holes punched
   (also called a `whoopee card' or `ventilator card').  Card
   readers tended to jam when they got to one of these, as the
   resulting card had too little structural strength to avoid buckling
   inside the mechanism.  Card punches could also jam trying to
   produce these things owing to power-supply problems.  When some
   practical joker fed a lace card through the reader, you needed to
   clear the jam with a `card knife' --- which you used on the joker
   first.

:language lawyer: n. A person, usually an experienced or senior
   software engineer, who is intimately familiar with many or most of
   the numerous restrictions and features (both useful and esoteric)
   applicable to one or more computer programming languages.  A
   language lawyer is distinguished by the ability to show you the
   five sentences scattered through a 200-plus-page manual that
   together imply the answer to your question "if only you had
   thought to look there".  Compare {wizard}, {legal},
   {legalese}.

:languages of choice: n. {C} and {LISP}.  Nearly every
   hacker knows one of these, and most good ones are fluent in both.
   Smalltalk and Prolog are also popular in small but influential
   communities.

   There is also a rapidly dwindling category of older hackers with
   FORTRAN, or even assembler, as their language of choice.  They
   often prefer to be known as {Real Programmer}s, and other
   hackers consider them a bit odd (see "{The Story of Mel, a
   Real Programmer}" in {Appendix A}).  Assembler is generally no longer
   considered interesting or appropriate for anything but {HLL}
   implementation, {glue}, and a few time-critical and
   hardware-specific uses in systems programs.  FORTRAN occupies a
   shrinking niche in scientific programming.

   Most hackers tend to frown on languages like {{Pascal}} and
   {{Ada}}, which don't give them the near-total freedom considered
   necessary for hacking (see {bondage-and-discipline language}),
   and to regard everything that's even remotely connected with
   {COBOL} or other traditional {card walloper} languages as a
   total and unmitigated {loss}.

:larval stage: n. Describes a period of monomaniacal concentration
   on coding apparently passed through by all fledgling hackers.
   Common symptoms include the perpetration of more than one 36-hour
   {hacking run} in a given week; neglect of all other activities
   including usual basics like food, sleep, and personal hygiene; and
   a chronic case of advanced bleary-eye.  Can last from 6 months to 2
   years, the apparent median being around 18 months.  A few so
   afflicted never resume a more `normal' life, but the ordeal
   seems to be necessary to produce really wizardly (as opposed to
   merely competent) programmers.  See also {wannabee}.  A less
   protracted and intense version of larval stage (typically lasting
   about a month) may recur when one is learning a new {OS} or
   programming language.

:lase: /layz/ vt. To print a given document via a laser printer.
   "OK, let's lase that sucker and see if all those graphics-macro
   calls did the right things."

:laser chicken: n. Kung Pao Chicken, a standard Chinese dish
   containing chicken, peanuts, and hot red peppers in a spicy
   pepper-oil sauce.  Many hackers call it `laser chicken' for
   two reasons: It can {zap} you just like a laser, and the
   sauce has a red color reminiscent of some laser beams.

   In a variation on this theme, it is reported that some Australian
   hackers have redesignated the common dish `lemon chicken' as
   `Chernobyl Chicken'.  The name is derived from the color of the
   sauce, which is considered bright enough to glow in the dark (as,
   mythically, do some of the inhabitants of Chernobyl).

:Lasherism: [Harvard] n. A program that solves a standard problem
   (such as the Eight Queens puzzle or implementing the {life}
   algorithm) in a deliberately nonstandard way.  Distinguished from a
   {crock} or {kluge} by the fact that the programmer did it on
   purpose as a mental exercise.  Such constructions are quite popular
   in exercises such as the {Obfuscated C contest}, and
   occasionally in {retrocomputing}.  Lew Lasher was a student at
   Harvard around 1980 who became notorious for such behavior.

:laundromat: n. Syn. {disk farm}; see {washing machine}.

:LDB: /l*'d*b/ [from the PDP-10 instruction set] vt. To extract
   from the middle.  "LDB me a slice of cake, please." This usage
   has been kept alive by Common LISP's function of the same name.
   Considered silly.  See also {DPB}.

:leaf site: n. A machine that merely originates and reads USENET
   news or mail, and does not relay any third-party traffic.  Often
   uttered in a critical tone; when the ratio of leaf sites to
   backbone, rib, and other relay sites gets too high, the network
   tends to develop bottlenecks.  Compare {backbone site}, {rib
   site}.

:leak: n. With qualifier, one of a class of resource-management bugs
   that occur when resources are not freed properly after operations
   on them are finished, so they effectively disappear (leak out).
   This leads to eventual exhaustion as new allocation requests come
   in.  {memory leak} and {fd leak} have their own entries; one
   might also refer, to, say, a `window handle leak' in a window
   system.

:leaky heap: [Cambridge] n. An {arena} with a {memory leak}.

:leapfrog attack: n. Use of userid and password information
   obtained illicitly from one host (e.g., downloading a file of
   account IDs and passwords, tapping TELNET, etc.) to compromise
   another host.  Also, to TELNET through one or more hosts in order
   to confuse a trace (a standard cracker procedure).

:legal: adj. Loosely used to mean `in accordance with all the
   relevant rules', esp. in connection with some set of constraints
   defined by software.  "The older =+ alternate for += is no longer
   legal syntax in ANSI C."  "This parser processes each line of
   legal input the moment it sees the trailing linefeed."  Hackers
   often model their work as a sort of game played with the
   environment in which the objective is to maneuver through the
   thicket of `natural laws' to achieve a desired objective.  Their
   use of `legal' is flavored as much by this game-playing sense as by
   the more conventional one having to do with courts and lawyers.
   Compare {language lawyer}, {legalese}.

:legalese: n. Dense, pedantic verbiage in a language description,
   product specification, or interface standard; text that seems
   designed to obfuscate and requires a {language lawyer} to
   {parse} it.  Though hackers are not afraid of high information
   density and complexity in language (indeed, they rather enjoy
   both), they share a deep and abiding loathing for legalese; they
   associate it with deception, {suit}s, and situations in which
   hackers generally get the short end of the stick.

:LER: /L-E-R/ [TMRC, from `Light-Emitting Diode'] n. A
   light-emitting resistor (that is, one in the process of burning
   up).  Ohm's law was broken.  See {SED}.

:LERP: /lerp/ vi.,n. Quasi-acronym for Linear Interpolation, used as a
   verb or noun for the operation.  E.g., Bresenham's algorithm lerps
   incrementally between the two endpoints of the line.

:let the smoke out: v. To fry hardware (see {fried}).  See
   {magic smoke} for the mythology behind this.

:letterbomb: n. A piece of {email} containing {live data}
   intended to do nefarious things to the recipient's machine or
   terminal.  It is possible, for example, to send letterbombs that
   will lock up some specific kinds of terminals when they are viewed,
   so thoroughly that the user must cycle power (see {cycle}, sense
   3) to unwedge them.  Under UNIX, a letterbomb can also try to get
   part of its contents interpreted as a shell command to the mailer.
   The results of this could range from silly to tragic.  See also
   {Trojan horse}; compare {nastygram}.

:lexer: /lek'sr/ n. Common hacker shorthand for `lexical
   analyzer', the input-tokenizing stage in the parser for a language
   (the part that breaks it into word-like pieces).  "Some C lexers
   get confused by the old-style compound ops like `=-'."

:lexiphage: /lek'si-fayj`/ n. A notorious word {chomper} on
   ITS.  See {bagbiter}.

:life: n. 1. A cellular-automata game invented by John Horton
   Conway and first introduced publicly by Martin Gardner
   (`Scientific American', October 1970); the game's popularity
   had to wait a few years for computers on which it could reasonably
   be played, as it's no fun to simulate the cells by hand.  Many
   hackers pass through a stage of fascination with it, and hackers at
   various places contributed heavily to the mathematical analysis of
   this game (most notably Bill Gosper at MIT, who even implemented
   life in {TECO}!; see {Gosperism}).  When a hacker mentions
   `life', he is much more likely to mean this game than the
   magazine, the breakfast cereal, or the human state of existence.
   2. The opposite of {USENET}.  As in {Get a life!}

: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.

:light pipe: n. Fiber optic cable.  Oppose {copper}.

:lightweight: adj. Opposite of {heavyweight}; usually found in
   combining forms such as `lightweight process'.

:like kicking dead whales down the beach: adj. Describes a slow,
   difficult, and disgusting process.  First popularized by a famous
   quote about the difficulty of getting work done under one of IBM's
   mainframe OSes.  "Well, you *could* write a C compiler in
   COBOL, but it would be like kicking dead whales down the beach."
   See also {fear and loathing}

:like nailing jelly to a tree: adj. Used to describe a task thought
   to be impossible, esp. one in which the difficulty arises from
   poor specification or inherent slipperiness in the problem domain.
   "Trying to display the `prettiest' arrangement of nodes and arcs
   that diagrams a given graph is like nailing jelly to a tree,
   because nobody's sure what `prettiest' means algorithmically."

: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 eater, the: [USENET] n. 1. A bug in some now-obsolete
   versions of the netnews software that used to eat up to BUFSIZ
   bytes of the article text.  The bug was triggered by having the
   text of the article start with a space or tab.  This bug was
   quickly personified as a mythical creature called the `line
   eater', and postings often included a dummy line of `line eater
   food'.  Ironically, line eater `food' not beginning with a space or
   tab wasn't actually eaten, since the bug was avoided; but if there
   *was* a space or tab before it, then the line eater would eat
   the food *and* the beginning of the text it was supposed to be
   protecting.  The practice of `sacrificing to the line eater'
   continued for some time after the bug had been {nailed to the
   wall}, and is still humorously referred to.  The bug itself is
   still (in mid-1991) occasionally reported to be lurking in some
   mail-to-netnews gateways.  2. See {NSA line eater}.

: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. Text 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.  The canonical example is {TECO};
   it is often claimed that "TECO's input syntax is indistinguishable
   from line noise."  Other non-{WYSIWYG} editors, such as Multics
   `qed' and Unix `ed', in the hands of a real hacker, also
   qualify easily, as do deliberately obfuscated languages such as
   {INTERCAL}.

:line starve: [MIT] 1. vi. To feed paper through a printer the
   wrong way by one line (most printers can't do this).  On a display
   terminal, to move the cursor up to the previous line of the screen.
   "To print `X squared', you just output `X', line starve, `2', line
   feed."  (The line starve causes the `2' to appear on the line
   above the `X', and the line feed gets back to the original line.)
   2. n. A character (or character sequence) that causes a terminal to
   perform this action.  ASCII 0011010, also called SUB or control-Z,
   was one common line-starve character in the days before
   microcomputers and the X3.64 terminal standard.  Unlike `line
   feed', `line starve' is *not* standard {{ASCII}}
   terminology.  Even among hackers it is considered a bit silly.
   3. [proposed] A sequence such as \c (used in System V echo, as well
   as {{nroff}} and {{troff}}) that suppresses a {newline} or
   other character(s) that would normally be emitted.

:link farm: [UNIX] n. A directory tree that contains many links to
   files in a master directory tree of files.  Link farms save space
   when one is maintaining several nearly identical copies of the same
   source tree --- for example, when the only difference is
   architecture-dependent object files.  "Let's freeze the source and
   then rebuild the FROBOZZ-3 and FROBOZZ-4 link farms."  Link farms
   may also be used to get around restrictions on the number of
   `-I' (include-file directory) arguments on older
   C preprocessors.  However, they can also get completely out of
   hand, becoming the filesystem equivalent of {spaghetti
   code}.

:link-dead: [MUD] adj. Said of a {MUD} character who has frozen in
   place because of a dropped Internet connection.

:lint: [from UNIX's `lint(1)', named for the bits of fluff it
   picks from programs] 1. vt. To examine a program closely for style,
   language usage, and portability problems, esp. if in C, esp. if
   via use of automated analysis tools, most esp. if the UNIX
   utility `lint(1)' is used.  This term used to be restricted to
   use of `lint(1)' itself, but (judging by references on USENET)
   it has become a shorthand for {desk check} at some non-UNIX
   shops, even in languages other than C.  Also as v. {delint}.
   2. n. Excess verbiage in a document, as in "this draft has too
   much lint".

:lion food: [IBM] n. Middle management or HQ staff (by extension,
   administrative drones in general).  From an old joke about two
   lions who, escaping from the zoo, split up to increase their
   chances but agreed to meet after 2 months.  When they finally
   meet, one is skinny and the other overweight.  The thin one says:
   "How did you manage?  I ate a human just once and they turned out
   a small army to chase me --- guns, nets, it was terrible.  Since
   then I've been reduced to eating mice, insects, even grass."  The
   fat one replies: "Well, *I* hid near an IBM office and ate a
   manager a day.  And nobody even noticed!"

:Lions Book: n. `Source Code and Commentary on UNIX level 6',
   by John Lions.  The two parts of this book contained (1) the entire
   source listing of the UNIX Version 6 kernel, and (2) a commentary
   on the source discussing the algorithms.  These were circulated
   internally at the University of New South Wales beginning 1976--77,
   and were, for years after, the *only* detailed kernel
   documentation available to anyone outside Bell Labs.  Because
   Western Electric wished to maintain trade secret status on the
   kernel, the Lions book was never formally published and was only
   supposed to be distributed to affiliates of source licensees.  In
   spite of this, it soon spread by samizdat to a good many of the
   early UNIX hackers.

:LISP: [from `LISt Processing language', but mythically from
   `Lots of Irritating Superfluous Parentheses'] n. The name of AI's
   mother tongue, a language based on the ideas of (a) variable-length
   lists and trees as fundamental data types, and (b) the
   interpretation of code as data and vice-versa.  Invented by John
   McCarthy at MIT in the late 1950s, it is actually older than any
   other {HLL} still in use except FORTRAN.  Accordingly, it has
   undergone considerable adaptive radiation over the years; modern
   variants are quite different in detail from the original LISP 1.5.
   The dominant HLL among hackers until the early 1980s, LISP now
   shares the throne with {C}.  See {languages of choice}.

   All LISP functions and programs are expressions that return
   values; this, together with the high memory utilization of LISPs,
   gave rise to Alan Perlis's famous quip (itself a take on an Oscar
   Wilde quote) that "LISP programmers know the value of everything
   and the cost of nothing".

   One significant application for LISP has been as a proof by example
   that most newer languages, such as {COBOL} and {Ada}, are full
   of unnecessary {crock}s.  When the {Right Thing} has already
   been done once, there is no justification for {bogosity} in newer
   languages.

:literature, the: n. Computer-science journals and other
   publications, vaguely gestured at to answer a question that the
   speaker believes is {trivial}.  Thus, one might answer an
   annoying question by saying "It's in the literature."  Oppose
   {Knuth}, which has no connotation of triviality.

:lithium lick: n. [NeXT] n. Steve Jobs.  Employees who have gotten
   too much attention from their esteemed founder are said to have
   `lithium lick' when they begin to show signs of Jobsian fervor and
   repeat the most recent catch phrases in normal conversation --- for
   example, "It just works, right out of the box!"

:little-endian: adj. Describes a computer architecture in which,
   within a given 16- or 32-bit word, bytes at lower addresses have
   lower significance (the word is stored `little-end-first').  The
   PDP-11 and VAX families of computers and Intel microprocessors and
   a lot of communications and networking hardware are little-endian.
   See {big-endian}, {middle-endian}, {NUXI problem}.  The term
   is sometimes used to describe the ordering of units other than
   bytes; most often these are bits within a byte.

:live data: n. 1. Data that is written to be interpreted and takes
   over program flow when triggered by some un-obvious operation, such
   as viewing it.  One use of such hacks is to break security.  For
   example, some smart terminals have commands that allow one to
   download strings to program keys; this can be used to write live
   data that, when listed to the terminal, infects it with a
   security-breaking {virus} that is triggered the next time a
   hapless user strikes that key.  For another, there are some
   well-known bugs in {vi} that allow certain texts to send
   arbitrary commands back to the machine when they are simply viewed.
   2. In C code, data that includes pointers to function {hook}s
   (executable code).  3. An object, such as a {trampoline}, that is
   constructed on the fly by a program and intended to be executed as
   code.  4. Actual real-world data, as opposed to `test data'.
   For example, "I think I have the record deletion module
   finished."  "Have you tried it out on live data?"  It usually
   carries the connotation that live data is more fragile and must not
   be corrupted, else bad things will happen.  So a possible alternate
   response to the above claim might be: "Well, make sure it works
   perfectly before we throw live data at it."  The implication here
   is that record deletion is something pretty significant, and a
   haywire record-deletion module running amok on live data would
   cause great harm and probably require restoring from backups.

:Live Free Or Die!: imp. 1. The state motto of New Hampshire, which
   appears on that state's automobile license plates.  2. A slogan
   associated with UNIX in the romantic days when UNIX aficionados saw
   themselves as a tiny, beleaguered underground tilting against the
   windmills of industry.  The "free" referred specifically to
   freedom from the {fascist} design philosophies and crufty
   misfeatures common on commercial operating systems.  Armando
   Stettner, one of the early UNIX developers, used to give out fake
   license plates bearing this motto under a large UNIX, all in New
   Hampshire colors of green and white.  These are now valued
   collector's items.

:livelock: /li:v'lok/ n. A situation in which some critical stage
   of a task is unable to finish because its clients perpetually
   create more work for it to do after they have been serviced but
   before it can clear its queue.  Differs from {deadlock} in that
   the process is not blocked or waiting for anything, but has a
   virtually infinite amount of work to do and can never catch up.

:liveware: /li:v'weir/ n. 1. Synonym for {wetware}.  Less
   common.  2. [Cambridge] Vermin. "Waiter, there's some liveware in
   my salad..."

:lobotomy: n. 1. What a hacker subjected to formal management
   training is said to have undergone.  At IBM and elsewhere this term
   is used by both hackers and low-level management; the latter
   doubtless intend it as a joke.  2. The act of removing the
   processor from a microcomputer in order to replace or upgrade it.
   Some very cheap {clone} systems are sold in `lobotomized' form
   --- everything but the brain.

:locals, the: pl.n. The users on one's local network (as opposed, say,
   to people one reaches via public Internet or UUCP connects).  The
   marked thing about this usage is how little it has to do with
   real-space distance. "I have to do some tweaking on this mail
   utility before releasing it to the locals."

:locked and loaded: [from military slang for an M-16 rifle with
   magazine inserted and prepared for firing] adj. Said of a removable
   disk volume properly prepared for use --- that is, locked into the
   drive and with the heads loaded.  Ironically, because their heads
   are `loaded' whenever the power is up, this description is never
   used of {{Winchester}} drives (which are named after a rifle).

:locked up: adj. Syn. for {hung}, {wedged}.

:logic bomb: n. Code surreptitiously inserted in an application or
   OS that causes it to perform some destructive or
   security-compromising activity whenever specified conditions are
   met.  Compare {back door}.

:logical: [from the technical term `logical device', wherein a
   physical device is referred to by an arbitrary `logical' name]
   adj. Having the role of.  If a person (say, Les Earnest at SAIL)
   who had long held a certain post left and were replaced, the
   replacement would for a while be known as the `logical' Les
   Earnest.  (This does not imply any judgment on the replacement.)
   Compare {virtual}.

   At Stanford, `logical' compass directions denote a coordinate
   system in which `logical north' is toward San Francisco,
   `logical west' is toward the ocean, etc., even though logical
   north varies between physical (true) north near San Francisco and
   physical west near San Jose.  (The best rule of thumb here is that,
   by definition, El Camino Real always runs logical north-and-south.)
   In giving directions, one might say: "To get to Rincon Tarasco
   restaurant, get onto {El Camino Bignum} going logical north."
   Using the word `logical' helps to prevent the recipient from
   worrying about that the fact that the sun is setting almost
   directly in front of him.  The concept is reinforced by North
   American highways which are almost, but not quite, consistently
   labeled with logical rather than physical directions.  A similar
   situation exists at MIT: Route 128 (famous for the electronics
   industry that has grown up along it) is a 3-quarters circle
   surrounding Boston at a radius of 10 miles, terminating near the
   coastline at each end.  It would be most precise to describe the
   two directions along this highway as `clockwise' and
   `counterclockwise', but the road signs all say "north" and
   "south", respectively.  A hacker might describe these directions
   as `logical north' and `logical south', to indicate that they
   are conventional directions not corresponding to the usual
   denotation for those words.  (If you went logical south along the
   entire length of route 128, you would start out going northwest,
   curve around to the south, and finish headed due east, including
   one infamous stretch of pavement that is simultaneously route 128
   south and Interstate 93 north, and is signed as such!)

:loop through: vt. To process each element of a list of things.
   "Hold on, I've got to loop through my paper mail."  Derives from
   the computer-language notion of an iterative loop; compare `cdr
   down' (under {cdr}), which is less common among C and UNIX
   programmers.  ITS hackers used to say `IRP over' after an
   obscure pseudo-op in the MIDAS PDP-10 assembler.

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

:lord high fixer: [primarily British, from Gilbert & Sullivan's
   `lord high executioner'] n. The person in an organization who knows
   the most about some aspect of a system.  See {wizard}.

:lose: [MIT] vi. 1. To fail.  A program loses when it encounters
   an exceptional condition or fails to work in the expected manner.
   2. To be exceptionally unesthetic or crocky.  3. Of people, to
   be obnoxious or unusually stupid (as opposed to ignorant).  See
   also {deserves to lose}.  4. n. Refers to something that is
   {losing}, especially in the phrases "That's a lose!" and "What
   a lose!"

:lose lose: interj. A reply to or comment on an undesirable
   situation.  "I accidentally deleted all my files!"  "Lose,
   lose."

:loser: n. An unexpectedly bad situation, program, programmer, or
   person.  Someone who habitually loses.  (Even winners can lose
   occasionally.)  Someone who knows not and knows not that he knows
   not.  Emphatic forms are `real loser', `total loser', and
   `complete loser' (but not **`moby loser', which would be a
   contradiction in terms).  See {luser}.

:losing: adj. Said of anything that is or causes a {lose} or
   {lossage}.

:loss: n. Something (not a person) that loses; a situation in which
   something is losing.  Emphatic forms include `moby loss', and
   `total loss', `complete loss'.  Common interjections are
   "What a loss!"  and "What a moby loss!"  Note that `moby loss'
   is OK even though **`moby loser' is not used; applied to an abstract
   noun, moby is simply a magnifier, whereas when applied to a person
   it implies substance and has positive connotations.  Compare
   {lossage}.

:lossage: /los'*j/ n. The result of a bug or malfunction.  This
   is a mass or collective noun.  "What a loss!" and "What
   lossage!"  are nearly synonymous.  The former is slightly more
   particular to the speaker's present circumstances; the latter
   implies a continuing {lose} of which the speaker is currently a
   victim.  Thus (for example) a temporary hardware failure is a loss,
   but bugs in an important tool (like a compiler) are serious
   lossage.

:lost in the noise: adj. Syn. {lost in the underflow}.  This term
   is from signal processing, where signals of very small amplitude
   cannot be separated from low-intensity noise in the system.  Though
   popular among hackers, it is not confined to hackerdom; physicists,
   engineers, astronomers, and statisticians all use it.

:lost in the underflow: adj. Too small to be worth considering;
   more specifically, small beyond the limits of accuracy or
   measurement.  This is a reference to `floating underflow', a
   condition that can occur when a floating-point arithmetic processor
   tries to handle quantities smaller than its limit of magnitude.  It
   is also a pun on `undertow' (a kind of fast, cold current that
   sometimes runs just offshore and can be dangerous to swimmers).
   "Well, sure, photon pressure from the stadium lights alters the
   path of a thrown baseball, but that effect gets lost in the
   underflow."  See also {overflow bit}.

:lots of MIPS but no I/O: adj. Used to describe a person who is
   technically brilliant but can't seem to communicate with human
   beings effectively.  Technically it describes a machine that has
   lots of processing power but is bottlenecked on input-output (in
   1991, the IBM Rios, a.k.a. RS/6000, is a notorious recent
   example).

:low-bandwidth: [from communication theory] adj. Used to indicate a
   talk that, although not {content-free}, was not terribly
   informative.  "That was a low-bandwidth talk, but what can you
   expect for an audience of {suit}s!"  Compare {zero-content},
   {bandwidth}, {math-out}.

:LPT: /L-P-T/ or /lip'it/ or /lip-it'/ [MIT, via DEC] n. Line
   printer, of course.  Rare under UNIX, commoner in hackers with
   MS-DOS or CP/M background.  The printer device is called
   `LPT:' on those systems that, like ITS, were strongly
   influenced by early DEC conventions.

:Lubarsky's Law of Cybernetic Entomology: prov. "There is *always*
   one more bug."

:lunatic fringe: [IBM] n. Customers who can be relied upon to accept
   release 1 versions of software.

:lurker: n. One of the `silent majority' in a electronic forum;
   one who posts occasionally or not at all but is known to read the
   group's postings regularly.  This term is not pejorative and indeed
   is casually used reflexively: "Oh, I'm just lurking."  Often used
   in `the lurkers', the hypothetical audience for the group's
   {flamage}-emitting regulars.

:luser: /loo'zr/ n. A {user}; esp. one who is also a
   {loser}.  ({luser} and {loser} are pronounced
   identically.)  This word was coined around 1975 at MIT.  Under
   ITS, when you first walked up to a terminal at MIT and typed
   Control-Z to get the computer's attention, it printed out some
   status information, including how many people were already using
   the computer; it might print "14 users", for example.  Someone
   thought it would be a great joke to patch the system to print
   "14 losers" instead.  There ensued a great controversy, as some
   of the users didn't particularly want to be called losers to their
   faces every time they used the computer.  For a while several
   hackers struggled covertly, each changing the message behind the
   back of the others; any time you logged into the computer it was
   even money whether it would say "users" or "losers".  Finally,
   someone tried the compromise "lusers", and it stuck.  Later one
   of the ITS machines supported `luser' as a request-for-help
   command.  ITS died the death in mid-1990, except as a museum piece;
   the usage lives on, however, and the term `luser' is often seen
   in program comments.

= M =
=====

:M: [SI] pref. (on units) suff. (on numbers) See {{quantifiers}}.

:macdink: /mak'dink/ [from the Apple Macintosh, which is said to
   encourage such behavior] vt. To make many incremental and
   unnecessary cosmetic changes to a program or file.  Often the
   subject of the macdinking would be better off without them.  "When
   I left at 11 P.M. last night, he was still macdinking the
   slides for his presentation."  See also {fritterware},
   {window shopping}.

:machinable: adj. Machine-readable.  Having the {softcopy} nature.

:machoflops: /mach'oh-flops/ [pun on `megaflops', a coinage for
   `millions of FLoating-point Operations Per Second'] n. Refers to
   artificially inflated performance figures often quoted by computer
   manufacturers.  Real applications are lucky to get half the quoted
   speed. See {Your mileage may vary}, {benchmark}.

:Macintoy: /mak'in-toy/ n. The Apple Macintosh, considered as a
   {toy}.  Less pejorative than {Macintrash}.

:Macintrash: /mak'in-trash`/ n. The Apple Macintosh, as described
   by a hacker who doesn't appreciate being kept away from the
   *real computer* by the interface.  The term {maggotbox} has
   been reported in regular use in the Research Triangle area of North
   Carolina.  Compare {Macintoy}. See also {beige toaster},
   {WIMP environment}, {point-and-drool interface},
   {drool-proof paper}, {user-friendly}.

:macro: /mak'roh/ [techspeak] n. A name (possibly followed by a
   formal {arg} list) that is equated to a text or symbolic
   expression to which it is to be expanded (possibly with the
   substitution of actual arguments) by a macro expander.  This
   definition can be found in any technical dictionary; what those
   won't tell you is how the hackish connotations of the term have
   changed over time.

   The term `macro' originated in early assemblers, which encouraged
   the use of macros as a structuring and information-hiding device.
   During the early 1970s, macro assemblers became ubiquitous, and
   sometimes quite as powerful and expensive as {HLL}s, only to fall
   from favor as improving compiler technology marginalized assembler
   programming (see {languages of choice}).  Nowadays the term is
   most often used in connection with the C preprocessor, LISP, or one
   of several special-purpose languages built around a macro-expansion
   facility (such as TeX or UNIX's [nt]roff suite).

   Indeed, the meaning has drifted enough that the collective
   `macros' is now sometimes used for code in any special-purpose
   application control language (whether or not the language is
   actually translated by text expansion), and for macro-like entities
   such as the `keyboard macros' supported in some text editors
   (and PC TSR or Macintosh INIT/CDEV keyboard enhancers).

:macro-: pref. Large.  Opposite of {micro-}.  In the mainstream
   and among other technical cultures (for example, medical people)
   this competes with the prefix {mega-}, but hackers tend to
   restrict the latter to quantification.

:macrology: /mak-rol'*-jee/ n. 1. Set of usually complex or crufty
   macros, e.g., as part of a large system written in {LISP},
   {TECO}, or (less commonly) assembler.  2. The art and science
   involved in comprehending a macrology in sense 1.  Sometimes
   studying the macrology of a system is not unlike archeology,
   ecology, or {theology}, hence the sound-alike construction.  See
   also {boxology}.

:macrotape: /ma'kroh-tayp/ n. An industry-standard reel of tape, as
   opposed to a {microtape}.

:maggotbox: /mag'*t-boks/ n. See {Macintrash}.  This is even
   more derogatory.

:magic: adj. 1. As yet unexplained, or too complicated to explain;
   compare {automagically} and (Arthur C.) Clarke's Third Law:
   "Any sufficiently advanced technology is indistinguishable from
   magic."  "TTY echoing is controlled by a large number of magic
   bits."  "This routine magically computes the parity of an 8-bit
   byte in three instructions."  2. Characteristic of something that
   works although no one really understands why (this is especially
   called {black magic}).  3. [Stanford] A feature not generally
   publicized that allows something otherwise impossible, or a feature
   formerly in that category but now unveiled.  Compare {black
   magic}, {wizardly}, {deep magic}, {heavy wizardry}.

   For more about hackish `magic', see {A Story About `Magic'}
   (in {Appendix A}).

:magic cookie: [UNIX] n. 1. Something passed between routines or
   programs that enables the receiver to perform some operation; a
   capability ticket or opaque identifier.  Especially used of small
   data objects that contain data encoded in a strange or
   intrinsically machine-dependent way.  E.g., on non-UNIX OSes with a
   non-byte-stream model of files, the result of `ftell(3)' may
   be a magic cookie rather than a byte offset; it can be passed to
   `fseek(3)', but not operated on in any meaningful way.  The
   phrase `it hands you a magic cookie' means it returns a result
   whose contents are not defined but which can be passed back to the
   same or some other program later.  2. An in-band code for changing
   graphic rendition (e.g., inverse video or underlining) or
   performing other control functions (see also {cookie}).  Some
   older terminals would leave a blank on the screen corresponding to
   mode-change magic cookies; this was also called a {glitch}.  (or
   occasionally a `turd'; compare {mouse droppings}).  See also
   {cookie}.

:magic number: [UNIX/C] n. 1. In source code, some non-obvious
   constant whose value is significant to the operation of a program
   and that is inserted inconspicuously in-line ({hardcoded}),
   rather than expanded in by a symbol set by a commented
   `#define'.  Magic numbers in this sense are bad style.  2. A
   number that encodes critical information used in an algorithm in
   some opaque way.  The classic examples of these are the numbers
   used in hash or CRC functions, or the coefficients in a linear
   congruential generator for pseudo-random numbers.  This sense
   actually predates and was ancestral to the more common sense 1.
   3. Special data located at the beginning of a binary data file to
   indicate its type to a utility.  Under UNIX, the system and various
   applications programs (especially the linker) distinguish between
   types of executable file by looking for a magic number.  Once upon
   a time, these magic numbers were PDP-11 branch instructions that
   skipped over header data to the start of executable code; the 0407,
   for example, was octal for `branch 16 bytes relative'.  Nowadays
   only a {wizard} knows the spells to create magic numbers.  How do
   you choose a fresh magic number of your own?  Simple --- you pick
   one at random.  See?  It's magic!

:magic smoke: n. A substance trapped inside IC packages that enables
   them to function (also called `blue smoke'; this is similar to
   the archaic `phlogiston' hypothesis about combustion).  Its
   existence is demonstrated by what happens when a chip burns up ---
   the magic smoke gets let out, so it doesn't work any more.  See
   {smoke test}, {let the smoke out}.

   USENETter Jay Maynard tells the following story: "Once, while
   hacking on a dedicated Z80 system, I was testing code by blowing
   EPROMs and plugging them in the system, then seeing what happened.
   One time, I plugged one in backwards.  I only discovered that
   *after* I realized that Intel didn't put power-on lights under
   the quartz windows on the tops of their EPROMs --- the die was
   glowing white-hot.  Amazingly, the EPROM worked fine after I erased
   it, filled it full of zeros, then erased it again.  For all I know,
   it's still in service.  Of course, this is because the magic smoke
   didn't get let out."  Compare the original phrasing of {Murphy's
   Law}.

:mailbomb: (also mail bomb) [USENET] 1. v. To send, or urge
   others to send, massive amounts of {email} to a single system or
   person, as in retaliation for a perceived serious offense.
   Mailbombing is itself widely regarded as a serious offense --- it
   can disrupt email traffic or other facilities for innocent users on
   the victim's system, and in extreme cases, even at upstream sites.
   2. n. An automatic procedure with a similar effect.  3. n. The mail
   sent.

:mailing list: n. (often shortened in context to `list') 1. An
   {email} address that is an alias (or {macro}, though that word
   is never used in this connection) for many other email addresses.
   Some mailing lists are simple `reflectors', redirecting mail sent
   to them to the list of recipients.  Others are filtered by humans
   or programs of varying degrees of sophistication; lists filtered by
   humans are said to be `moderated'.  2. The people who receive
   your email when you send it to such an address.

   Mailing lists are one of the primary forms of hacker interaction,
   along with {USENET}.  They predate USENET, having originated
   with the first UUCP and ARPANET connections.  They are often used
   for private information-sharing on topics that would be too
   specialized for or inappropriate to public USENET groups.  Though
   some of these maintain purely technical content (such as the
   Internet Engineering Task Force mailing list), others (like the
   `sf-lovers' list maintained for many years by Saul Jaffe) are
   recreational, and others are purely social.  Perhaps the most
   infamous of the social lists was the eccentric bandykin
   distribution; its latter-day progeny, lectroids and
   tanstaafl, still include a number of the oddest and most
   interesting people in hackerdom.

   Mailing lists are easy to create and (unlike USENET) don't tie up a
   significant amount of machine resources (until they get very large,
   at which point they can become interesting torture tests for mail
   software).  Thus, they are often created temporarily by working
   groups, the members of which can then collaborate on a project
   without ever needing to meet face-to-face.  Much of the material in
   this lexicon was criticized and polished on just such a mailing
   list (called `jargon-friends'), which included all the co-authors
   of Steele-1983.

:main loop: n. Software tools are often written to perform some
   actions repeatedly on whatever input is handed to them, terminating
   when there is no more input or they are explicitly told to go away.
   In such programs, the loop that gets and processes input is called
   the `main loop'.  See also {driver}.

:mainframe: n. Term originally referring to the cabinet
   containing the central processor unit or `main frame' of a
   room-filling {Stone Age} batch machine.  After the emergence of
   smaller `minicomputer' designs in the early 1970s, the
   traditional {big iron} machines were described as `mainframe
   computers' and eventually just as mainframes.  The term carries the
   connotation of a machine designed for batch rather than interactive
   use, though possibly with an interactive timesharing operating
   system retrofitted onto it; it is especially used of machines built
   by IBM, Unisys, and the other great {dinosaur}s surviving from
   computing's {Stone Age}.

   It has been common wisdom among hackers since the late 1980s that
   the mainframe architectural tradition is essentially dead (outside
   of the tiny market for {number-crunching} supercomputers (see
   {cray})), having been swamped by the recent huge advances in IC
   technology and low-cost personal computing.  As of 1993, corporate
   America is just beginning to figure this out --- the wave of
   failures, takeovers, and mergers among traditional mainframe makers
   have certainly provided sufficient omens (see {dinosaurs
   mating}).

:management: n. 1. Corporate power elites distinguished primarily by
   their distance from actual productive work and their chronic
   failure to manage (see also {suit}).  Spoken derisively, as in
   "*Management* decided that ...".  2. Mythically, a vast
   bureaucracy responsible for all the world's minor irritations.
   Hackers' satirical public notices are often signed `The Mgt'; this
   derives from the `Illuminatus' novels (see the Bibliography in
   {Appendix C}).

:mandelbug: /mon'del-buhg/ [from the Mandelbrot set] n. A bug
   whose underlying causes are so complex and obscure as to make its
   behavior appear chaotic or even non-deterministic.  This term
   implies that the speaker thinks it is a {Bohr bug}, rather than a
   {heisenbug}.  See also {schroedinbug}.

:manged: /monjd/ [probably from the French `manger' or Italian
   `mangiare', to eat; perhaps influenced by English n. `mange',
   `mangy'] adj. Refers to anything that is mangled or damaged,
   usually beyond repair.  "The disk was manged after the electrical
   storm."  Compare {mung}.

:mangle: vt. Used similarly to {mung} or {scribble}, but more violent
   in its connotations; something that is mangled has been
   irreversibly and totally trashed.

:mangler: [DEC] n. A manager.  Compare {mango}; see also
   {management}.  Note that {system mangler} is somewhat different
   in connotation.

:mango: /mang'go/ [orig. in-house jargon at Symbolics] n. A manager.
   Compare {mangler}.  See also {devo} and {doco}.

:manularity: /man`yoo-la'ri-tee/ [prob. fr. techspeak `manual'
   + `granularity'] n. A notional measure of the manual labor
   required for some task, particularly one of the sort that
   automation is supposed to eliminate.  "Composing English on paper
   has much higher manularity than using a text editor, especially in
   the revising stage."  Hackers tend to consider manularity a symptom
   of primitive methods; in fact, a true hacker confronted with an
   apparent requirement to do a computing task {by hand} will
   inevitably seize the opportunity to build another tool (see
   {toolsmith}).

:marbles: [from mainstream "lost all his/her marbles"] pl.n. The
   minimum needed to build your way further up some hierarchy of tools
   or abstractions.  After a bad system crash, you need to determine
   if the machine has enough marbles to come up on its own, or enough
   marbles to allow a rebuild from backups, or if you need to rebuild
   from scratch.  "This compiler doesn't even have enough marbles to
   compile {hello, world}."

:marginal: adj. 1. Extremely small.  "A marginal increase in
   {core} can decrease {GC} time drastically."  In everyday
   terms, this means that it is a lot easier to clean off your desk if
   you have a spare place to put some of the junk while you sort
   through it.  2. Of extremely small merit.  "This proposed new
   feature seems rather marginal to me."  3. Of extremely small
   probability of {win}ning.  "The power supply was rather marginal
   anyway; no wonder it fried."

:Marginal Hacks: n. Margaret Jacks Hall, a building into which the
   Stanford AI Lab was moved near the beginning of the 1980s (from the
   {D. C. Power Lab}).

:marginally: adv. Slightly.  "The ravs here are only marginally
   better than at Small Eating Place."  See {epsilon}.

:marketroid: /mar'k*-troyd/ alt. `marketing slime',
   `marketeer', `mar-ket-ing droid', `marketdroid'. n. A member
   of a company's marketing department, esp. one who promises users
   that the next version of a product will have features that are not
   actually scheduled for inclusion, are extremely difficult to
   implement, and/or are in violation of the laws of physics; and/or
   one who describes existing features (and misfeatures) in ebullient,
   buzzword-laden adspeak.  Derogatory.  Compare {droid}.

:Mars: n. A legendary tragic failure, the archetypal Hacker Dream
   Gone Wrong.  Mars was the code name for a family of PDP-10
   compatible computers built by Systems Concepts (now, The SC Group);
   the multi-processor SC-30M, the small uniprocessor SC-25M, and the
   never-built superprocessor SC-40M.  These machines were marvels of
   engineering design; although not much slower than the unique
   {Foonly} F-1, they were physically smaller and consumed less
   power than the much slower DEC KS10 or Foonly F-2, F-3, or F-4
   machines.  They were also completely compatible with the DEC KL10,
   and ran all KL10 binaries, including the operating system, with no
   modifications at about 2--3 times faster than a KL10.
   
   When DEC cancelled the Jupiter project in 1983, Systems Concepts
   should have made a bundle selling their machine into shops with a
   lot of software investment in PDP-10s, and in fact their spring
   1984 announcement generated a great deal of excitement in the
   PDP-10 world.  TOPS-10 was running on the Mars by the summer of
   1984, and TOPS-20 by early fall.  Unfortunately, the hackers
   running Systems Concepts were much better at designing machines
   than at mass producing or selling them; the company allowed itself
   to be sidetracked by a bout of perfectionism into continually
   improving the design, and lost credibility as delivery dates
   continued to slip.  They also overpriced the product ridiculously;
   they believed they were competing with the KL10 and VAX 8600 and
   failed to reckon with the likes of Sun Microsystems and other
   hungry startups building workstations with power comparable to the
   KL10 at a fraction of the price.  By the time SC shipped the first
   SC-30M to Stanford in late 1985, most customers had already made
   the traumatic decision to abandon the PDP-10, usually for VMS or
   UNIX boxes.  Most of the Mars computers built ended up being
   purchased by CompuServe.
   
   This tale and the related saga of {Foonly} hold a lesson for hackers:
   if you want to play in the {Real World}, you need to learn Real World
   moves.
   
:martian: n. A packet sent on a TCP/IP network with a source
   address of the test loopback interface [127.0.0.1].  This means
   that it will come back at you labeled with a source address that
   is clearly not of this earth.  "The domain server is getting lots
   of packets from Mars.  Does that gateway have a martian filter?"

:massage: vt. Vague term used to describe `smooth' transformations of
   a data set into a different form, esp. transformations that do
   not lose information.  Connotes less pain than {munch} or {crunch}.
   "He wrote a program that massages X bitmap files into GIF
   format."  Compare {slurp}.

:math-out: [poss. from `white-out' (the blizzard variety)] n. A
   paper or presentation so encrusted with mathematical or other
   formal notation as to be incomprehensible.  This may be a device
   for concealing the fact that it is actually {content-free}.  See
   also {numbers}, {social science number}.

:Matrix: [FidoNet] n. 1. What the Opus BBS software and sysops call
   {FidoNet}.  2. Fanciful term for a {cyberspace} expected to
   emerge from current networking experiments (see {network, the}).
   3. The totality of present-day computer networks.

: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}.

:Mbogo, Dr. Fred: /*m-boh'goh, dok'tr fred/ [Stanford] n. The
   archetypal man you don't want to see about a problem, esp. an
   incompetent professional; a shyster.  "Do you know a good eye
   doctor?"  "Sure, try Mbogo Eye Care and Professional Dry
   Cleaning."  The name comes from synergy between {bogus} and the
   original Dr. Mbogo, a witch doctor who was Gomez Addams' physician
   on the old "Addams Family" TV show.  Compare {Bloggs Family,
   the}, see also {fred}.

:meatware: n. Synonym for {wetware}.  Less common.

:meeces: /mees'*z/ [TMRC] n. Occasional furry visitors who are
   not {urchin}s.  [That is, mice. This may no longer be in live
   use; it clearly derives from the refrain of the early-1960s cartoon
   character Mr. Jinx: "I hate meeces to *pieces*!" --- ESR]

:meg: /meg/ n. See {{quantifiers}}.

:mega-: /me'g*/ [SI] pref. See {{quantifiers}}.

:megapenny: /meg'*-pen`ee/ n. $10,000 (1 cent * 10^6).
   Used semi-humorously as a unit in comparing computer cost and
   performance figures.

:MEGO: /me'goh/ or /mee'goh/ [`My Eyes Glaze Over', often `Mine Eyes
   Glazeth (sic) Over', attributed to the futurologist Herman Kahn]
   Also `MEGO factor'.  1. n. A {handwave} intended to confuse the
   listener and hopefully induce agreement because the listener does
   not want to admit to not understanding what is going on.  MEGO is
   usually directed at senior management by engineers and contains a
   high proportion of {TLA}s.  2. excl. An appropriate response to
   MEGO tactics.  3. Among non-hackers this term often refers not to
   behavior that causes the eyes to glaze, but to the eye-glazing
   reaction itself, which may be triggered by the mere threat of
   technical detail as effectively as by an actual excess of it.

:meltdown, network: n. See {network meltdown}.

:meme: /meem/ [coined by analogy with `gene', by Richard
   Dawkins] n. An idea considered as a {replicator}, esp. with
   the connotation that memes parasitize people into propagating them
   much as viruses do.  Used esp. in the phrase `meme complex'
   denoting a group of mutually supporting memes that form an
   organized belief system, such as a religion.  This lexicon is an
   (epidemiological) vector of the `hacker subculture' meme complex;
   each entry might be considered a meme.  However, `meme' is often
   misused to mean `meme complex'.  Use of the term connotes
   acceptance of the idea that in humans (and presumably other tool-
   and language-using sophonts) cultural evolution by selection of
   adaptive ideas has superseded biological evolution by selection of
   hereditary traits.  Hackers find this idea congenial for tolerably
   obvious reasons.

:meme plague: n. The spread of a successful but pernicious
   {meme}, esp. one that parasitizes the victims into giving
   their all to propagate it.  Astrology, BASIC, and the other guy's
   religion are often considered to be examples.  This usage is given
   point by the historical fact that `joiner' ideologies like
   Naziism or various forms of millennarian Christianity have
   exhibited plague-like cycles of exponential growth followed by
   collapses to small reservoir populations.

:memetics: /me-met'iks/ [from {meme}] The study of memes.  As of
   mid-1993, this is still an extremely informal and speculative
   endeavor, though the first steps towards at least statistical rigor
   have been made by H. Keith Henson and others.  Memetics is a
   popular topic for speculation among hackers, who like to see
   themselves as the architects of the new information ecologies in
   which memes live and replicate.

:memory farts: n. The flatulent sounds that some DOS box BIOSes
   (most notably AMI's) make when checking memory on bootup.

:memory leak: n. An error in a program's dynamic-store allocation
   logic that causes it to fail to reclaim discarded memory, leading
   to eventual collapse due to memory exhaustion.  Also (esp. at
   CMU) called {core leak}.  These problems were severe on older
   machines with small, fixed-size address spaces, and special "leak
   detection" tools were commonly written to root them out.  With the
   advent of virtual memory, it is unfortunately easier to be sloppy
   about wasting a bit of memory (although when you run out of memory
   on a VM machine, it means you've got a *real* leak!).  See
   {aliasing bug}, {fandango on core}, {smash the stack},
   {precedence lossage}, {overrun screw}, {leaky heap},
   {leak}.

: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.

:menuitis: /men`yoo-i:'tis/ n. Notional disease suffered by software
   with an obsessively simple-minded menu interface and no escape.
   Hackers find this intensely irritating and much prefer the
   flexibility of command-line or language-style interfaces,
   especially those customizable via macros or a special-purpose
   language in which one can encode useful hacks.  See
   {user-obsequious}, {drool-proof paper}, {WIMP environment},
   {for the rest of us}.

:mess-dos: /mes-dos/ n. Derisory term for MS-DOS.  Often followed
   by the ritual banishing "Just say No!"  See {{MS-DOS}}.  Most
   hackers (even many MS-DOS hackers) loathe MS-DOS for its
   single-tasking nature, its limits on application size, its nasty
   primitive interface, and its ties to IBMness (see {fear and
   loathing}).  Also `mess-loss', `messy-dos', `mess-dog',
   `mess-dross', `mush-dos', and various combinations thereof.  In
   Ireland and the U.K. it is even sometimes called `Domestos' after a
   brand of toilet cleanser.

:meta: /me't*/ or /may't*/ or (Commonwealth) /mee't*/ [from
   analytic philosophy] adj.,pref. One level of description up.  A
   metasyntactic variable is a variable in notation used to describe
   syntax, and meta-language is language used to describe language.
   This is difficult to explain briefly, but much hacker humor turns
   on deliberate confusion between meta-levels.  See {{Humor,
   Hacker}}.

: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.

: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
   (well, hardly ever) 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 (thanks largely to early
             versions of this lexicon!).  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 to be 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.
     zxc, spqr, {wombat}:
             Cambridge University (England).
     shme
             Berkeley, GeoWorks.  Pronounced /shmee/.
     {foo}, {bar}, zot
             Helsinki University of Technology, Finland.
     blarg, wibble
             New Zealand

   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.

:MFTL: /M-F-T-L/ [abbreviation: `My Favorite Toy Language'] 1. adj.
   Describes a talk on a programming language design that is heavy on
   the syntax (with lots of BNF), sometimes even talks about semantics
   (e.g., type systems), but rarely, if ever, has any content (see
   {content-free}).  More broadly applied to talks --- even when
   the topic is not a programming language --- in which the subject
   matter is gone into in unnecessary and meticulous detail at the
   sacrifice of any conceptual content.  "Well, it was a typical MFTL
   talk".  2. n. Describes a language about which the developers are
   passionate (often to the point of prosyletic zeal) but no one else
   cares about.  Applied to the language by those outside the
   originating group.  "He cornered me about type resolution in his
   MFTL."

   The first great goal in the mind of the designer of an MFTL is
   usually to write a compiler for it, then bootstrap the design away
   from contamination by lesser languages by writing a compiler for it
   in itself.  Thus, the standard put-down question at an MFTL talk is
   "Has it been used for anything besides its own compiler?".  On
   the other hand, a language that *cannot* be used to write
   its own compiler is beneath contempt.  See {break-even point}.

   (On a related note, Dennis Ritchie once proposed a test of the
   generality and utility of a language and the operating system under
   which it is compiled: "Is the output of a FORTRAN program compiled
   under the language acceptable as input to the FORTRAN compiler?"
   In other words, can you write programs thaat write programs? (See
   {toolsmith}.)  Alarming numbers of (language, OS) pairs fail
   this test, particularly when the language is FORTRAN; Ritchie is
   quick to point out that {UNIX} (even using FORTRAN) passes it
   handily.  That the test could ever be failed is only surprising to
   those who have had the good fortune to have worked only under
   modern systems which lack OS-supported and -imposed "file
   types".)

:mickey: n. The resolution unit of mouse movement.  It has been
   suggested that the `disney' will become a benchmark unit for
   animation graphics performance.

:mickey mouse program: n. North American equivalent of a {noddy}
   (that is, trivial) program.  Doesn't necessarily have the
   belittling connotations of mainstream slang "Oh, that's just
   mickey mouse stuff!"; sometimes trivial programs can be very
   useful.

:micro-: pref. 1. Very small; this is the root of its use as a
   quantifier prefix.  2. A quantifier prefix, calling for
   multiplication by 10^(-6) (see {{quantifiers}}).  Neither
   of these uses is peculiar to hackers, but hackers tend to fling
   them both around rather more freely than is countenanced in
   standard English.  It is recorded, for example, that one
   CS professor used to characterize the standard length of his
   lectures as a microcentury --- that is, about 52.6 minutes (see
   also {attoparsec}, {nanoacre}, and especially
   {microfortnight}).  3. Personal or human-scale --- that is,
   capable of being maintained or comprehended or manipulated by one
   human being.  This sense is generalized from `microcomputer',
   and is esp. used in contrast with `macro-' (the corresponding
   Greek prefix meaning `large').  4. Local as opposed to global (or
   {macro-}).  Thus a hacker might say that buying a smaller car to
   reduce pollution only solves a microproblem; the macroproblem of
   getting to work might be better solved by using mass transit,
   moving to within walking distance, or (best of all) telecommuting.

:microfloppies: n. 3.5-inch floppies, as opposed to 5.25-inch
   {vanilla} or mini-floppies and the now-obsolete 8-inch variety.
   This term may be headed for obsolescence as 5.25-inchers pass out
   of use, only to be revived if anybody floats a sub-3-inch floppy
   standard.  See {stiffy}, {minifloppies}.

:microfortnight: n. 1/1000000 of the fundamental unit of time in
   the Furlong/Firkin/Fortnight system of measurement; 1.2096 sec.  (A
   furlong is 1/8th of a mile; a firkin is 1/4th of a barrel; the mass
   unit of the system is taken to be a firkin of water).  The VMS
   operating system has a lot of tuning parameters that you can set
   with the SYSGEN utility, and one of these is TIMEPROMPTWAIT, the
   time the system will wait for an operator to set the correct date
   and time at boot if it realizes that the current value is bogus.
   This time is specified in microfortnights!

   Multiple uses of the millifortnight (about 20 minutes) and
   {nanofortnight} have also been reported.

:microLenat: /mi:-kroh-len'-*t/ n. See {bogosity}.

:microReid: /mi:'kroh-reed/ n. See {bogosity}.

:Microsloth Windows: /mi:'kroh-sloth` win'dohz/ n. Hackerism for
   `Microsoft Windows', a windowing system for the IBM-PC which is so
   limited by bug-for-bug compatibility with {mess-dos} that it is
   agonizingly slow on anything less than a fast 386.  Compare {X},
   {sun-stools}.

: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.

:middle-endian: adj. Not {big-endian} or {little-endian}.
   Used of perverse byte orders such as 3-4-1-2 or 2-1-4-3,
   occasionally found in the packed-decimal formats of minicomputer
   manufacturers who shall remain nameless.  See {NUXI problem}.

:milliLampson: /mil'*-lamp`sn/ n. A unit of talking speed,
   abbreviated mL.  Most people run about 200 milliLampsons.  Butler
   Lampson (a CS theorist and systems implementor highly regarded
   among hackers) goes at 1000.  A few people speak faster.  This unit
   is sometimes used to compare the (sometimes widely disparate) rates
   at which people can generate ideas and actually emit them in
   speech.  For example, noted computer architect C. Gordon Bell
   (designer of the PDP-11) is said, with some awe, to think at about
   1200 mL but only talk at about 300; he is frequently reduced to
   fragments of sentences as his mouth tries to keep up with his
   speeding brain.

:minifloppies: n. 5.25-inch {vanilla} floppy disks, as opposed to
   3.5-inch or {microfloppies} and the now-obsolescent 8-inch
   variety.  At one time, this term was a trademark of Shugart
   Associates for their SA-400 minifloppy drive.  Nobody paid any
   attention.  See {stiffy}.

:MIPS: /mips/ [abbreviation] n. 1. A measure of computing speed;
   formally, `Million Instructions Per Second' (that's 10^6
   per second, not 2^(20)!); often rendered by hackers as
   `Meaningless Indication of Processor Speed' or in other
   unflattering ways.  This joke expresses a nearly universal attitude
   about the value of most {benchmark} claims, said attitude being
   one of the great cultural divides between hackers and
   {marketroid}s.  The singular is sometimes `1 MIP' even though
   this is clearly etymologically wrong.  See also {KIPS} and
   {GIPS}.  2. Computers, especially large computers, considered
   abstractly as sources of {computron}s.  "This is just a
   workstation; the heavy MIPS are hidden in the basement."  3. The
   corporate name of a particular RISC-chip company; among other
   things, they designed the processor chips used in DEC's 3100
   workstation series.  4. Acronym for `Meaningless Information per
   Second' (a joke, prob. from sense 1).

:misbug: /mis-buhg/ [MIT] n. An unintended property of a program
   that turns out to be useful; something that should have been a
   {bug} but turns out to be a {feature}.  Usage: rare.  Compare
   {green lightning}. See {miswart}.

:misfeature: /mis-fee'chr/ or /mis'fee`chr/ n. A feature that
   eventually causes lossage, possibly because it is not adequate for
   a new situation that has evolved.  Since it results from a
   deliberate and properly implemented feature, a misfeature is not a
   bug.  Nor is it a simple unforeseen side effect; the term implies
   that the feature in question was carefully planned, but its
   long-term consequences were not accurately or adequately predicted
   (which is quite different from not having thought ahead at all).  A
   misfeature can be a particularly stubborn problem to resolve,
   because fixing it usually involves a substantial philosophical
   change to the structure of the system involved.

   Many misfeatures (especially in user-interface design) arise
   because the designers/implementors mistake their personal tastes
   for laws of nature.  Often a former feature becomes a misfeature
   because a trade-off was made whose parameters subsequently change
   (possibly only in the judgment of the implementors).  "Well, yeah,
   it is kind of a misfeature that file names are limited to six
   characters, but the original implementors wanted to save directory
   space and we're stuck with it for now."

:Missed'em-five: n. Pejorative hackerism for AT&T System V UNIX,
   generally used by {BSD} partisans in a bigoted mood.  (The
   synonym `SysVile' is also encountered.)  See {software bloat},
   {Berzerkeley}.

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

:miswart: /mis-wort/ [from {wart} by analogy with {misbug}] n.
   A {feature} that superficially appears to be a {wart} but has been
   determined to be the {Right Thing}.  For example, in some versions
   of the {EMACS} text editor, the `transpose characters' command
   exchanges the character under the cursor with the one before it on the
   screen, *except* when the cursor is at the end of a line, in
   which case the two characters before the cursor are exchanged.
   While this behavior is perhaps surprising, and certainly
   inconsistent, it has been found through extensive experimentation
   to be what most users want.  This feature is a miswart.

:moby: /moh'bee/ [MIT: seems to have been in use among model
   railroad fans years ago.  Derived from Melville's `Moby Dick'
   (some say from `Moby Pickle').] 1. adj. Large, immense, complex,
   impressive.  "A Saturn V rocket is a truly moby frob."  "Some
   MIT undergrads pulled off a moby hack at the Harvard-Yale game."
   (See "{The Meaning of `Hack'}").  2. n. obs. The
   maximum address space of a machine (see below).  For a 680[234]0 or
   VAX or most modern 32-bit architectures, it is 4,294,967,296 8-bit
   bytes (4 gigabytes).  3. A title of address (never of third-person
   reference), usually used to show admiration, respect, and/or
   friendliness to a competent hacker.  "Greetings, moby Dave.  How's
   that address-book thing for the Mac going?"  4. adj. In
   backgammon, doubles on the dice, as in `moby sixes', `moby
   ones', etc.  Compare this with {bignum} (sense 3): double sixes
   are both bignums and moby sixes, but moby ones are not bignums (the
   use of `moby' to describe double ones is sarcastic).  Standard
   emphatic forms: `Moby foo', `moby win', `moby loss'.  `Foby
   moo': a spoonerism due to Richard Greenblatt.  5. The largest
   available unit of something which is available in discrete
   increments. Thus, ordering a "moby Coke" at your favorite
   fast-food joint is not just a request for a large Coke, it's an
   explicit request for the largest size they sell.

   This term entered hackerdom with the Fabritek 256K memory added to
   the MIT AI PDP-6 machine, which was considered unimaginably huge
   when it was installed in the 1960s (at a time when a more typical
   memory size for a timesharing system was 72 kilobytes).  Thus, a
   moby is classically 256K 36-bit words, the size of a PDP-6 or
   PDP-10 moby.  Back when address registers were narrow the term was
   more generally useful, because when a computer had virtual memory
   mapping, it might actually have more physical memory attached to it
   than any one program could access directly.  One could then say
   "This computer has 6 mobies" meaning that the ratio of physical
   memory to address space is 6, without having to say specifically
   how much memory there actually is.  That in turn implied that the
   computer could timeshare six `full-sized' programs without having
   to swap programs between memory and disk.

   Nowadays the low cost of processor logic means that address spaces
   are usually larger than the most physical memory you can cram onto
   a machine, so most systems have much *less* than one theoretical
   `native' moby of {core}.  Also, more modern memory-management
   techniques (esp. paging) make the `moby count' less significant.
   However, there is one series of widely-used chips for which the term
   could stand to be revived --- the Intel 8088 and 80286 with their
   incredibly {brain-damaged} segmented-memory designs.  On these, a
   `moby' would be the 1-megabyte address span of a segment/offset
   pair (by coincidence, a PDP-10 moby was exactly 1 megabyte of 9-bit
   bytes).

:mockingbird: n. Software that intercepts communications
   (especially login transactions) between users and hosts and
   provides system-like responses to the users while saving their
   responses (especially account IDs and passwords).  A special case
   of {Trojan Horse}.

:mod: vt.,n. 1. Short for `modify' or `modification'.  Very
   commonly used --- in fact the full terms are considered markers
   that one is being formal.  The plural `mods' is used esp. with
   reference to bug fixes or minor design changes in hardware or
   software, most esp. with respect to {patch} sets or a {diff}.
   2. Short for {modulo} but used *only* for its techspeak sense.

: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
   that 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.

:mode bit: n. A {flag}, usually in hardware, that selects between
   two (usually quite different) modes of operation.  The connotations
   are different from {flag} bit in that mode bits are mainly
   written during a boot or set-up phase, are seldom explicitly read,
   and seldom change over the lifetime of an ordinary program.  The
   classic example was the EBCDIC-vs.-ASCII bit (#12) of the Program
   Status Word of the IBM 360.  Another was the bit on a PDP-12 that
   controlled whether it ran the PDP-8 or the LINC instruction set.

:modulo: /mo'dyu-loh/ prep. Except for.  An overgeneralization of
   mathematical terminology; one can consider saying that
   4 = 22 except for the 9s (4 = 22 mod 9).  "Well,
   LISP seems to work okay now, modulo that {GC} bug."  "I feel
   fine today modulo a slight headache."

:molly-guard: /mol'ee-gard/ [University of Illinois] n. A shield
   to prevent tripping of some {Big Red Switch} by clumsy or
   ignorant hands.  Originally used of some plexiglass covers
   improvised for the BRS on an IBM 4341 after a programmer's toddler
   daughter (named Molly) frobbed it twice in one day.  Later
   generalized to covers over stop/reset switches on disk drives and
   networking equipment.

:Mongolian Hordes technique: n. Development by {gang bang}
   (poss. from the Sixties counterculture expression `Mongolian
   clusterfuck' for a public orgy).  Implies that large numbers of
   inexperienced programmers are being put on a job better performed
   by a few skilled ones.  Also called `Chinese Army technique';
   see also {Brooks's Law}.

:monkey up: vt. To hack together hardware for a particular task,
   especially a one-shot job.  Connotes an extremely {crufty} and
   consciously temporary solution.  Compare {hack up}, {kluge up},
   {cruft together}, {cruft together}.

:monkey, scratch: n. See {scratch monkey}.

:monstrosity: 1. n. A ridiculously {elephantine} program or
   system, esp. one that is buggy or only marginally functional.
   2. The quality of being monstrous (see `Overgeneralization' in the
   discussion of jargonification).  See also {baroque}.

:monty: /mon'tee/ [US Geological Survey] n.  A program with a
   ludicrously complex user interface written to perform extremely
   trivial tasks.  An example would be a menu-driven, button clicking,
   pulldown, pop-up windows program for listing directories.  The
   original monty was an infamous weather-reporting program, Monty the
   Amazing Weather Man, written at the USGS.  Monty had a
   widget-packed X-window interface with over 200 buttons; and all
   monty actually *did* was {FTP} files off the network.

:Moof: /moof/ [MAC users] 1. n. A semi-legendary creature, also
   called the `dogcow', that lurks in the depths of the Macintosh
   Technical Notes Hypercard stack V3.1; specifically, the full story
   of the dogcow is told in technical note #31 (the particular Moof
   illustrated is properly named `Clarus').  Option-shift-click will
   cause it to emit a characteristic `Moof!' or `!fooM' sound.
   *Getting* to tech note 31 is the hard part; to discover how to
   do that, one must needs examine the stack script with a hackerly
   eye.  Clue: {rot13} is involved.  A dogcow also appears if you
   choose `Page Setup...' with a LaserWriter selected and click on
   the `Options' button.  2. adj. Used to flag software that's a hack,
   something untested and on the edge.  On one Apple CD-ROM, certain
   folders such as "Tools & Apps (Moof!)" and "Development
   Platforms (Moof!)", are so marked to indicate that they contain
   software not fully tested or sanctioned by the powers that be.
   When you open these folders you cross the boundary into
   hackerland.

:Moore's Law: /morz law/ prov. The observation that the logic
   density of silicon integrated circuits has closely followed the
   curve (bits per square inch)  = 2^((t - 1962)) where t
   is time in years; that is, the amount of information storable in
   one square inch of silicon has roughly doubled yearly every year
   since the technology was invented.  See also {Parkinson's Law of
   Data}.

:moose call: n. See {whalesong}.

:moria: /mor'ee-*/ n. Like {nethack} and {rogue}, one of
   the large PD Dungeons-and-Dragons-like simulation games, available
   for a wide range of machines and operating systems.  The name is
   from Tolkien's Mines of Moria; compare {elder days}.
   {elvish}.  The game is extremely addictive and a major consumer
   of time better used for hacking.

:MOTAS: /moh-toz/ [USENET: Member Of The Appropriate Sex, after
   {MOTOS} and {MOTSS}] n. A potential or (less often) actual sex
   partner.  See also {SO}.

:MOTOS: /moh-tohs/ [acronym from the 1970 U.S. census forms via
   USENET: Member Of The Opposite Sex] n. A potential or (less often)
   actual sex partner.  See {MOTAS}, {MOTSS}, {SO}.  Less
   common than MOTSS or {MOTAS}, which have largely displaced it.

:MOTSS: /mots/ or /M-O-T-S-S/ [from the 1970 U.S. census forms
   via USENET, Member Of The Same Sex] n. Esp. one considered as a
   possible sexual partner.  The gay-issues newsgroup on USENET is
   called soc.motss.  See {MOTOS} and {MOTAS}, which derive
   from it.  Also see {SO}.

:mouse ahead: vi. Point-and-click analog of `type ahead'.  To
   manipulate a computer's pointing device (almost always a mouse in
   this usage, but not necessarily) and its selection or command
   buttons before a computer program is ready to accept such input, in
   anticipation of the program accepting the input.  Handling this
   properly is rare, but it can help make a {WIMP environment} much
   more usable, assuming the users are familiar with the behavior of
   the user interface.

:mouse around: vi. To explore public portions of a large system, esp.
   a network such as Internet via {FTP} or {TELNET}, looking for
   interesting stuff to {snarf}.

:mouse belt: n. See {rat belt}.

:mouse droppings: [MS-DOS] n. Pixels (usually single) that are not
   properly restored when the mouse pointer moves away from a
   particular location on the screen, producing the appearance that
   the mouse pointer has left droppings behind.  The major causes for
   this problem are programs that write to the screen memory
   corresponding to the mouse pointer's current location without
   hiding the mouse pointer first, and mouse drivers that do not quite
   support the graphics mode in use.

:mouse elbow: n. A tennis-elbow-like fatigue syndrome resulting from
   excessive use of a {WIMP environment}.  Similarly, `mouse
   shoulder'; GLS reports that he used to get this a lot before he
   taught himself to be ambimoustrous.

:mouso: /mow'soh/ n. [by analogy with `typo'] An error in mouse usage
   resulting in an inappropriate selection or graphic garbage on the
   screen.  Compare {thinko}, {braino}.

:MS-DOS:: /M-S-dos/ [MicroSoft Disk Operating System] n. A
   {clone} of {{CP/M}} for the 8088 crufted together in 6 weeks by
   hacker Tim Paterson, who is said to have regretted it ever since.
   Numerous features, including vaguely UNIX-like but rather broken
   support for subdirectories, I/O redirection, and pipelines, were
   hacked into 2.0 and subsequent versions; as a result, there are two
   or more incompatible versions of many system calls, and MS-DOS
   programmers can never agree on basic things like what character to
   use as an option switch or whether to be case-sensitive.  The
   resulting mess is now the highest-unit-volume OS in history.  Often
   known simply as DOS, which annoys people familiar with other
   similarly abbreviated operating systems (the name goes back to the
   mid-1960s, when it was attached to IBM's first disk operating
   system for the 360).  The name further annoys those who know what
   the term {operating system} does (or ought to) connote; DOS is
   more properly a set of relatively simple interrupt services.  Some
   people like to pronounce DOS like "dose", as in "I don't work on
   dose, man!", or to compare it to a dose of brain-damaging drugs
   (a slogan button in wide circulation among hackers exhorts:
   "MS-DOS: Just say No!").  See {mess-dos}, {ill-behaved}.

:mu: /moo/ The correct answer to the classic trick question
   "Have you stopped beating your wife yet?".  Assuming that you
   have no wife or you have never beaten your wife, the answer "yes"
   is wrong because it implies that you used to beat your wife and
   then stopped, but "no" is worse because it suggests that you have
   one and are still beating her.  According to various Discordians
   and Douglas Hofstadter (see the Bibliography in {Appendix C}),
   the correct answer is usually "mu", a Japanese word alleged to
   mean "Your question cannot be answered because it depends on
   incorrect assumptions".  Hackers tend to be sensitive to logical
   inadequacies in language, and many have adopted this suggestion
   with enthusiasm.  The word `mu' is actually from Chinese, meaning
   `nothing'; it is used in mainstream Japanese in that sense, but
   native speakers do not recognize the Discordian question-denying
   use.  It almost certainly derives from overgeneralization of the
   answer in the following well-known Rinzei Zen teaching riddle:

     A monk asked Joshu, "Does a dog have the Buddha nature?"
     Joshu retorted, "Mu!"

   See also {has the X nature}, {AI Koans}, and Douglas
   Hofstadter's `G"odel, Escher, Bach: An Eternal Golden Braid'
   (pointer in the Bibliography in appendix C).

:MUD: /muhd/ [acronym, Multi-User Dungeon; alt. Multi-User
   Dimension] 1. n.  A class of {virtual reality} experiments
   accessible via the Internet.  These are real-time chat forums with
   structure; they have multiple `locations' like an adventure
   game, and may include combat, traps, puzzles, magic, a simple
   economic system, and the capability for characters to build more
   structure onto the database that represents the existing world.
   2. vi. To play a MUD.  The acronym MUD is often lowercased and/or
   verbed; thus, one may speak of `going mudding', etc.

   Historically, MUDs (and their more recent progeny with names of MU-
   form) derive from a hack by Richard Bartle and Roy Trubshaw on the
   University of Essex's DEC-10 in the early 1980s; descendants of
   that game still exist today and are sometimes generically called
   BartleMUDs.  There is a widespread myth (repeated,
   unfortunately, by earlier versions of this lexicon) that the name
   MUD was trademarked to the commercial MUD run by Bartle on British
   Telecom (the motto: "You haven't *lived* 'til you've
   *died* on MUD!"); however, this is false --- Richard Bartle
   explicitly placed `MUD' in PD in 1985.  BT was upset at this, as
   they had already printed trademark claims on some maps and posters,
   which were released and created the myth.

   Students on the European academic networks quickly improved on the
   MUD concept, spawning several new MUDs (VAXMUD, AberMUD, LPMUD).
   Many of these had associated bulletin-board systems for social
   interaction.  Because these had an image as `research' they
   often survived administrative hostility to BBSs in general.  This,
   together with the fact that USENET feeds have been spotty and
   difficult to get in the U.K., made the MUDs major foci of hackish
   social interaction there.

   AberMUD and other variants crossed the Atlantic around 1988 and
   quickly gained popularity in the U.S.; they became nuclei for large
   hacker communities with only loose ties to traditional hackerdom
   (some observers see parallels with the growth of USENET in the
   early 1980s).  The second wave of MUDs (TinyMUD and variants)
   tended to emphasize social interaction, puzzles, and cooperative
   world-building as opposed to combat and competition.  In 1991, over
   50% of MUD sites are of a third major variety, LPMUD, which
   synthesizes the combat/puzzle aspects of AberMUD and older systems
   with the extensibility of TinyMud. The trend toward greater
   programmability and flexibility will doubtless continue.

   The state of the art in MUD design is still moving very rapidly,
   with new simulation designs appearing (seemingly) every month.
   There is now (early 1991) a move afoot to deprecate the term
   {MUD} itself, as newer designs exhibit an exploding variety of
   names corresponding to the different simulation styles being
   explored.  See also {bonk/oif}, {FOD}, {link-dead},
   {mudhead}, {talk mode}.

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

: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}.

:multician: /muhl-ti'shn/ [coined at Honeywell, ca. 1970] n.
   Competent user of {{Multics}}.  Perhaps oddly, no one has ever
   promoted the analogous `Unician'.

:Multics:: /muhl'tiks/ n. [from "MULTiplexed Information and
   Computing Service"] An early (late 1960s) timesharing operating
   system co-designed by a consortium including MIT, GE, and Bell
   Laboratories.  Very innovative for its time --- among other things,
   it introduced the idea of treating all devices uniformly as special
   files.  All the members but GE eventually pulled out after
   determining that {second-system effect} had bloated Multics to
   the point of practical unusability (the `lean' predecessor in
   question was {CTSS}).  Honeywell commercialized Multics after
   buying out GE's computer group, but it was never very successful
   (among other things, on some versions one was commonly required to
   enter a password to log out).  One of the developers left in the
   lurch by the project's breakup was Ken Thompson, a circumstance
   which led directly to the birth of {{UNIX}}.  For this and other
   reasons, aspects of the Multics design remain a topic of occasional
   debate among hackers.  See also {brain-damaged} and {GCOS}.

:multitask: n. Often used of humans in the same meaning it has for
   computers, to describe a person doing several things at once (but
   see {thrash}).  The term `multiplex', from communications
   technology (meaning to handle more than one channel at the same
   time), is used similarly.

:mumblage: /muhm'bl*j/ n. The topic of one's mumbling (see
   {mumble}).  "All that mumblage" is used like "all that
   stuff" when it is not quite clear how the subject of discussion
   works, or like "all that crap" when `mumble' is being used as
   an implicit replacement for pejoratives.

: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.

:munch: [often confused with {mung}, q.v.] vt. To transform
   information in a serial fashion, often requiring large amounts of
   computation.  To trace down a data structure.  Related to {crunch}
   and nearly synonymous with {grovel}, but connotes less pain.

:munching: n. Exploration of security holes of someone else's
   computer for thrills, notoriety, or to annoy the system manager.
   Compare {cracker}.  See also {hacked off}.

:munching squares: n. A {display hack} dating back to the PDP-1
   (ca. 1962, reportedly discovered by Jackson Wright), which employs
   a trivial computation (repeatedly plotting the graph Y = X XOR T
   for successive values of T --- see {HAKMEM} items 146--148) to
   produce an impressive display of moving and growing squares that
   devour the screen.  The initial value of T is treated as a
   parameter, which, when well-chosen, can produce amazing effects.
   Some of these, later (re)discovered on the LISP machine, have been
   christened `munching triangles' (try AND for XOR and toggling
   points instead of plotting them), `munching w's', and `munching
   mazes'.  More generally, suppose a graphics program produces an
   impressive and ever-changing display of some basic form, foo, on a
   display terminal, and does it using a relatively simple program;
   then the program (or the resulting display) is likely to be
   referred to as `munching foos'.  [This is a good example of the
   use of the word {foo} as a {metasyntactic variable}.]

:munchkin: /muhnch'kin/ [from the squeaky-voiced little people in
   L. Frank Baum's `The Wizard of Oz'] n. A teenage-or-younger micro
   enthusiast hacking BASIC or something else equally constricted.  A
   term of mild derision --- munchkins are annoying but some grow up
   to be hackers after passing through a {larval stage}.  The term
   {urchin} is also used.  See also {wannabee}, {bitty box}.

:mundane: [from SF fandom] n. 1. A person who is not in science
   fiction fandom.  2. A person who is not in the computer industry.
   In this sense, most often an adjectival modifier as in "in my
   mundane life...." See also {Real World}.

:mung: /muhng/ [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 original TMRC lexicon) thinks it may originally
   have been onomatopoeic for the sound of a relay spring (contact)
   being twanged.

:munge: /muhnj/ vt. 1. [derogatory] To imperfectly transform
   information.  2. A comprehensive rewrite of a routine, data
   structure or the whole program.

   This term is often confused with {mung} and may derive from it,
   or possibly vice-versa.

:Murphy's Law: prov. The correct, *original* Murphy's Law
   reads: "If there are two or more ways to do something, and one of
   those ways can result in a catastrophe, then someone will do it."
   This is a principle of defensive design, cited here because it is
   usually given in mutant forms less descriptive of the challenges of
   design for lusers.  For example, you don't make a two-pin plug
   symmetrical and then label it `THIS WAY UP'; if it matters which
   way it is plugged in, then you make the design asymmetrical (see
   also the anecdote under {magic smoke}).

   Edward A. Murphy, Jr. was one of the engineers on the rocket-sled
   experiments that were done by the U.S. Air Force in 1949 to test
   human acceleration tolerances (USAF project MX981).  One experiment
   involved a set of 16 accelerometers mounted to different parts of
   the subject's body.  There were two ways each sensor could be glued
   to its mount, and somebody methodically installed all 16 the wrong
   way around.  Murphy then made the original form of his
   pronouncement, which the test subject (Major John Paul Stapp)
   quoted at a news conference a few days later.

   Within months `Murphy's Law' had spread to various technical
   cultures connected to aerospace engineering.  Before too many years
   had gone by variants had passed into the popular imagination,
   changing as they went.  Most of these are variants on "Anything
   that can go wrong, will"; this is sometimes referred to as
   {Finagle's Law}.  The memetic drift apparent in these mutants
   clearly demonstrates Murphy's Law acting on itself!

:music:: n. A common extracurricular interest of hackers (compare
   {{science-fiction fandom}}, {{oriental food}}; see also
   {filk}).  Hackish folklore has long claimed that musical and
   programming abilities are closely related, and there has been at
   least one large-scale statistical study that supports this.
   Hackers, as a rule, like music and often develop musical
   appreciation in unusual and interesting directions.  Folk music is
   very big in hacker circles; so is electronic music, and the sort of
   elaborate instrumental jazz/rock that used to be called
   `progressive' and isn't recorded much any more.  The hacker's
   musical range tends to be wide; many can listen with equal
   appreciation to (say) Talking Heads, Yes, Gentle Giant, Pat Metheny,
   Scott Joplin, Tangerine Dream, King Sunny Ade, The Pretenders, or
   the Brandenburg Concerti.  It is also apparently true that
   hackerdom includes a much higher concentration of talented amateur
   musicians than one would expect from a similar-sized control group
   of {mundane} types.

:mutter: vt. To quietly enter a command not meant for the ears, eyes,
   or fingers of ordinary mortals.  Often used in `mutter an
   {incantation}'.  See also {wizard}.

= N =
=====

:N: /N/ quant. 1. A large and indeterminate number of objects:
   "There were N bugs in that crock!"  Also used in its
   original sense of a variable name: "This crock has N bugs,
   as N goes to infinity."  (The true number of bugs is always
   at least N + 1.)  2. A variable whose value is inherited
   from the current context.  For example, when a meal is being
   ordered at a restaurant, N may be understood to mean however
   many people there are at the table.  From the remark "We'd like to
   order N wonton soups and a family dinner
   for N - 1" you can deduce that one person at the table
   wants to eat only soup, even though you don't know how many people
   there are (see {great-wall}).  3. `Nth': adj. The
   ordinal counterpart of N, senses 1 and 2.  "Now for the
   Nth and last time..."  In the specific context
   "Nth-year grad student", N is generally assumed to
   be at least 4, and is usually 5 or more (see {tenured graduate
   student}).  See also {{random numbers}}, {two-to-the-N}.

:nadger: /nad'jr/ [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.

:nagware: /nag'weir/ [USENET] n. The variety of {shareware}
   that displays a large screen at the beginning or end reminding you
   to register, typically requiring some sort of keystroke to continue
   so that you can't use the software in batch mode.  Compare
   {crippleware}.

:nailed to the wall: [like a trophy] adj. Said of a bug finally
   eliminated after protracted, and even heroic, effort.

:nailing jelly: vi. See {like nailing jelly to a tree}.

:naive: adj. Untutored in the perversities of some particular
   program or system; one who still tries to do things in an intuitive
   way, rather than the right way (in really good designs these
   coincide, but most designs aren't `really good' in the
   appropriate sense).  This trait is completely unrelated to general
   maturity or competence, or even competence at any other specific
   program.  It is a sad commentary on the primitive state of
   computing that the natural opposite of this term is often claimed
   to be `experienced user' but is really more like `cynical
   user'.

:naive user: n. A {luser}.  Tends to imply someone who is
   ignorant mainly owing to inexperience.  When this is applied to
   someone who *has* experience, there is a definite implication
   of stupidity.

:NAK: /nak/ [from the ASCII mnemonic for 0010101] interj.
   1. On-line joke answer to {ACK}?: "I'm not here."
   2. On-line answer to a request for chat: "I'm not available."
   3. Used to politely interrupt someone to tell them you don't
   understand their point or that they have suddenly stopped making
   sense.  See {ACK}, sense 3.  "And then, after we recode the
   project in COBOL...."  "Nak, Nak, Nak!  I thought I heard you
   say COBOL!"

:nano: /nan'oh/ [CMU: from `nanosecond'] n. A brief period of
   time.  "Be with you in a nano" means you really will be free
   shortly, i.e., implies what mainstream people mean by "in a
   jiffy" (whereas the hackish use of `jiffy' is quite different ---
   see {jiffy}).

:nano-: [SI: the next quantifier below {micro-}; meaning *
   10^(-9)] pref. Smaller than {micro-}, and used in the same rather
   loose and connotative way.  Thus, one has {{nanotechnology}}
   (coined by hacker K. Eric Drexler) by analogy with
   `microtechnology'; and a few machine architectures have a
   `nanocode' level below `microcode'.  Tom Duff at Bell Labs has
   also pointed out that "Pi seconds is a nanocentury".
   See also {{quantifiers}}, {pico-}, {nanoacre}, {nanobot},
   {nanocomputer}, {nanofortnight}.

:nanoacre: /nan'oh-ay`kr/ n. A unit (about 2 mm square) of real
   estate on a VLSI chip.  The term gets its giggle value from the
   fact that VLSI nanoacres have costs in the same range as real acres
   once one figures in design and fabrication-setup costs.

:nanobot: /nan'oh-bot/ n. A robot of microscopic proportions,
   presumably built by means of {{nanotechnology}}.  As yet, only
   used informally (and speculatively!).  Also called a `nanoagent'.

:nanocomputer: /nan'oh-k*m-pyoo'tr/ n. A computer with
   mo-lec-u-lar-sized switching elements.  Designs for mechanical
   nanocomputers which use single-molecule sliding rods for their
   logic have been proposed.  The controller for a {nanobot} would
   be a nanocomputer.

:nanofortnight: [Adelaide University] n. 1 fortnight * 10^-9,
   or about 1.2 msec.  This unit was used largely by students doing
   undergraduate practicals.  See {microfortnight}, {attoparsec},
   and {micro-}.

:nanotechnology:: /nan'-oh-tek-no`l*-jee/ n. A hypothetical
   fabrication technology in which objects are designed and built with
   the individual specification and placement of each separate atom.
   The first unequivocal nanofabrication experiments took place
   in 1990, for example with the deposition of individual xenon
   atoms on a nickel substrate to spell the logo of a certain very
   large computer company.  Nanotechnology has been a hot topic in the
   hacker subculture ever since the term was coined by K. Eric Drexler
   in his book `Engines of Creation', where he predicted that
   nanotechnology could give rise to replicating assemblers,
   permitting an exponential growth of productivity and personal
   wealth.  See also {blue goo}, {gray goo}, {nanobot}.

:nasal demons: n. Recognized shorthand on the USENET group
   comp.std.c for any unexpected behavior of a C compiler on
   encountering an undefined construct.  During a discussion on that
   group in early 1992, a regular remarked "When the compiler
   encounters [a given undefined construct] it is legal for it to make
   demons fly out of your nose" (the implication is that it may
   choose any arbitrarily bizarre way to interpret the code without
   violating the ANSI C standard).  Someone else followed up with a
   reference to "nasal demons", which quickly became established.

:nastygram: /nas'tee-gram/ n. 1. A protocol packet or item of
   email (the latter is also called a {letterbomb}) that takes
   advantage of misfeatures or security holes on the target system to
   do untoward things.  2. Disapproving mail, esp. from a
   {net.god}, pursuant to a violation of {netiquette} or a
   complaint about failure to correct some mail- or news-transmission
   problem.  Compare {shitogram}.  3. A status report from an
   unhappy, and probably picky, customer.  "What'd Corporate say in
   today's nastygram?"  4. [deprecated] An error reply by mail from a
   {daemon}; in particular, a {bounce message}.

:Nathan Hale: n. An asterisk (see also {splat}, {{ASCII}}).  Oh,
   you want an etymology?  Notionally, from "I regret that I have only
   one asterisk for my country!", a misquote of the famous remark
   uttered by Nathan Hale just before he was hanged.  Hale was a
   (failed) spy for the rebels in the American War of Independence.

:nature: n. See {has the X nature}.

:neat hack: n. 1. A clever technique.  2. A brilliant practical
   joke, where neatness is correlated with cleverness, harmlessness,
   and surprise value.  Example: the Caltech Rose Bowl card display
   switch (see "{The Meaning of `Hack'}", appendix A).  See
   also {hack}.

: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.

:neep-neep: /neep neep/ [onomatopoeic, from New York SF fandom]
   n.  One who is fascinated by computers.  More general than
   {hacker}, as it need not imply more skill than is required to
   boot games on a PC.  The derived noun `neeping' oapplies
   specifically to the long conversations about computers that tend to
   develop in the corners at most SF-convention parties (the term
   `neepery' is also in wide use).  Fandom has a related proverb to
   the effect that "Hacking is a conversational black hole!".

:neophilia: /nee`oh-fil'-ee-*/ n. The trait of being excited and
   pleased by novelty.  Common trait of most hackers, SF fans, and
   members of several other connected leading-edge subcultures,
   including the pro-technology `Whole Earth' wing of the ecology
   movement, space activists, many members of Mensa, and the
   Discordian/neo-pagan underground.  All these groups overlap heavily
   and (where evidence is available) seem to share characteristic
   hacker tropisms for science fiction, {{music}}, and {{oriental
   food}}.  The opposite tendency is `neophobia'.

:net.-: /net dot/ pref. [USENET] Prefix used to describe people and
   events related to USENET.  From the time before the {Great
   Renaming}, when most non-local newsgroups had names beginning
   `net.'.  Includes {net.god}s, `net.goddesses' (various
   charismatic net.women with circles of on-line admirers),
   `net.lurkers' (see {lurker}), `net.person',
   `net.parties' (a synonym for {boink}, sense 2), and
   many similar constructs.  See also {net.police}.

:net.god: /net god/ n. Used to refer to anyone who satisfies some
   combination of the following conditions: has been visible on USENET
   for more than 5 years, ran one of the original backbone sites,
   moderated an important newsgroup, wrote news software, or knows
   Gene, Mark, Rick, Mel, Henry, Chuq, and Greg personally.  See
   {demigod}.  Net.goddesses such as Rissa or the Slime Sisters have
   (so far) been distinguished more by personality than by authority.

:net.personality: /net per`sn-al'-*-tee/ n. Someone who has made a name
   for him or herself on {USENET}, through either longevity or
   attention-getting posts, but doesn't meet the other requirements of
   {net.god}hood.

:net.police: /net-p*-lees'/ n. (var. `net.cops') Those USENET
   readers who feel it is their responsibility to pounce on and
   {flame} any posting which they regard as offensive or in
   violation of their understanding of {netiquette}.  Generally
   used sarcastically or pejoratively.  Also spelled `net police'.
   See also {net.-}, {code police}.

:NetBOLLIX: [from bollix: to bungle] n. {IBM}'s NetBIOS, an
   extremely {brain-damaged} network protocol that, like {Blue
   Glue}, is used at commercial shops that don't know any better.

: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 {IRC},
   perhaps during a {netburp}, and doesn't sign back on until
   later.  In the interim, he is "dead to the net".

:nethack: /net'hak/ [UNIX] n. A dungeon game similar to
   {rogue} but more elaborate, distributed in C source over
   {USENET} and very popular at UNIX sites and on PC-class machines
   (nethack is probably the most widely distributed of the freeware
   dungeon games).  The earliest versions, written by Jay Fenlason and
   later considerably enhanced by Andries Brouwer, were simply called
   `hack'.  The name changed when maintenance was taken over by a
   group of hackers originally organized by Mike Stephenson; the
   current contact address (as of mid-1993) is
   nethack-bugs@linc.cis.upenn.edu.

:netiquette: /net'ee-ket/ or /net'i-ket/ [portmanteau from "network
   etiquette"] n. The conventions of politeness recognized on {USENET},
   such as avoidance of cross-posting to inappropriate groups or
   refraining from commercial pluggery outside the biz groups.

: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 has nothing to do with mainstream "jet lag",
   a condition which hackers tend not to be much bothered by.)
   
:netnews: /net'n[y]ooz/ n. 1. The software that makes {USENET}
   run.  2. The content of USENET.  "I read netnews right after my
   mail most mornings."

:netrock: /net'rok/ [IBM] n. A {flame}; used esp. on VNET,
   IBM's internal corporate network.

: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!"

:network address: n. (also `net address') As used by hackers,
   means an address on `the' network (see {network, the}; this is
   almost always a {bang path} or {{Internet address}}).  Such an
   address is essential if one wants to be to be taken seriously by
   hackers; in particular, persons or organizations that claim to
   understand, work with, sell to, or recruit from among hackers but
   *don't* display net addresses are quietly presumed to be
   clueless poseurs and mentally flushed (see {flush}, sense 4).
   Hackers often put their net addresses on their business cards and
   wear them prominently in contexts where they expect to meet other
   hackers face-to-face (see also {{science-fiction fandom}}).  This
   is mostly functional, but is also a signal that one identifies with
   hackerdom (like lodge pins among Masons or tie-dyed T-shirts among
   Grateful Dead fans).  Net addresses are often used in email text as
   a more concise substitute for personal names; indeed, hackers may
   come to know each other quite well by network names without ever
   learning each others' `legal' monikers.  See also {sitename},
   {domainist}.

:network meltdown: n. A state of complete network overload; the
   network equivalent of {thrash}ing.  This may be induced by a
   {Chernobyl packet}.  See also {broadcast storm}, {kamikaze
   packet}.

:network, the: n. 1. The union of all the major noncommercial,
   academic, and hacker-oriented networks, such as Internet, the old
   ARPANET, NSFnet, {BITNET}, and the virtual UUCP and {USENET}
   `networks', plus the corporate in-house networks and commercial
   time-sharing services (such as CompuServe) that gateway to them.  A
   site is generally considered `on the network' if it can be reached
   through some combination of Internet-style (@-sign) and UUCP
   (bang-path) addresses.  See {bang path}, {{Internet address}},
   {network address}.  2. A fictional conspiracy of libertarian
   hacker-subversives and anti-authoritarian monkeywrenchers described
   in Robert Anton Wilson's novel `Schr"odinger's Cat', to which
   many hackers have subsequently decided they belong (this is an
   example of {ha ha only serious}).

   In sense 1, `network' is often abbreviated to `net'.  "Are
   you on the net?" is a frequent question when hackers first meet
   face to face, and "See you on the net!" is a frequent goodbye.

:New Jersey: [primarily Stanford/Silicon Valley] adj. Brain-dam-aged
   or of poor design.  This refers to the allegedly wretched quality
   of such software as C, C++, and UNIX (which originated at Bell Labs
   in Murray Hill, New Jersey).  "This compiler bites the bag, but
   what can you expect from a compiler designed in New Jersey?"
   Compare {Berkeley Quality Software}.  See also {UNIX
   conspiracy}.

:New Testament: n. [C programmers] The second edition of K&R's
   `The C Programming Language' (Prentice-Hall, 1988; ISBN
   0-13-110362-8), describing ANSI Standard C.  See {K&R}.

:newbie: /n[y]oo'bee/ n. [orig. from British public-school and
   military slang variant of `new boy'] A USENET neophyte.
   This term surfaced in the {newsgroup} talk.bizarre but is
   now in wide use.  Criteria for being considered a newbie vary
   wildly; a person can be called a newbie in one newsgroup while
   remaining a respected regular in another.  The label `newbie'
   is sometimes applied as a serious insult to a person who has been
   around USENET for a long time but who carefully hides all evidence
   of having a clue.  See {BIFF}.

:newgroup wars: /n[y]oo'groop worz/ [USENET] n. The salvos of dueling
   `newgroup' and `rmgroup' messages sometimes exchanged by
   persons on opposite sides of a dispute over whether a {newsgroup}
   should be created net-wide.  These usually settle out within a week
   or two as it becomes clear whether the group has a natural
   constituency (usually, it doesn't).  At times, especially in the
   completely anarchic alt hierarchy, the names of newsgroups
   themselves become a form of comment or humor; e.g., the spinoff of
   alt.swedish.chef.bork.bork.bork from alt.tv.muppets in
   early 1990, or any number of specialized abuse groups named after
   particularly notorious {flamer}s, e.g., alt.weemba.

:newline: /n[y]oo'li:n/ n. 1. [techspeak, primarily UNIX] The
   ASCII LF character (0001010), used under {{UNIX}} as a text line
   terminator.  A Bell-Labs-ism rather than a Berkeleyism;
   interestingly (and unusually for UNIX jargon), it is said to have
   originally been an IBM usage.  (Though the term `newline' appears
   in ASCII standards, it never caught on in the general computing
   world before UNIX).  2. More generally, any magic character,
   character sequence, or operation (like Pascal's writeln procedure)
   required to terminate a text record or separate lines.  See
   {crlf}, {terpri}.

:NeWS: /nee'wis/, /n[y]oo'is/ or /n[y]ooz/ [acronym; the
   `Network Window System'] n. The road not taken in window systems,
   an elegant {{PostScript}}-based environment that would almost certainly
   have won the standards war with {X} if it hadn't been
   {proprietary} to Sun Microsystems.  There is a lesson here that
   too many software vendors haven't yet heeded.  Many hackers insist
   on the two-syllable pronunciations above as a way of distinguishing
   NeWS from {news} (the {netnews} software).

:news: n. See {netnews}.

:newsfroup: // [USENET] n. Silly synonym for {newsgroup},
   originally a typo but now in regular use on USENET's talk.bizarre
   and other lunatic-fringe groups.  Compare {hing}, {grilf},
   and {filk}.

:newsgroup: [USENET] n. One of {USENET}'s huge collection of
   topic groups or {fora}.  Usenet groups can be `unmoderated'
   (anyone can post) or `moderated' (submissions are automatically
   directed to a moderator, who edits or filters and then posts the
   results).  Some newsgroups have parallel {mailing list}s for
   Internet people with no netnews access, with postings to the group
   automatically propagated to the list and vice versa.  Some
   moderated groups (especially those which are actually gatewayed
   Internet mailing lists) are distributed as `digests', with groups
   of postings periodically collected into a single large posting with
   an index.

   Among the best-known are comp.lang.c (the C-language forum),
   comp.arch (on computer architectures), comp.unix.wizards
   (for UNIX wizards), rec.arts.sf-lovers (for science-fiction
   fans), and talk.politics.misc (miscellaneous political
   discussions and {flamage}).

: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.
   
:nickle: /ni'kl/ [from `nickel', common name for the U.S.
   5-cent coin] n. A {nybble} + 1; 5 bits.  Reported among
   developers for Mattel's GI 1600 (the Intellivision games
   processor), a chip with 16-bit-wide RAM but 10-bit-wide ROM.  See
   also {deckle}.

:night mode: n. See {phase} (of people).

:Nightmare File System: n. Pejorative hackerism for Sun's Network
   File System (NFS).  In any nontrivial network of Suns where there
   is a lot of NFS cross-mounting, when one Sun goes down, the others
   often freeze up.  Some machine tries to access the down one, and
   (getting no response) repeats indefinitely.  This causes it to
   appear dead to some messages (what is actually happening is that it
   is locked up in what should have been a brief excursion to a higher
   {spl} level).  Then another machine tries to reach either the
   down machine or the pseudo-down machine, and itself becomes
   pseudo-down.  The first machine to discover the down one is now
   trying both to access the down one and to respond to the
   pseudo-down one, so it is even harder to reach.  This situation
   snowballs very fast, and soon the entire network of machines is
   frozen --- worst of all, the user can't even abort the file access
   that started the problem!  Many of NFS's problems are excused by
   partisans as being an inevitable result of its statelessness, which
   is held to be a great feature (critics, of course, call it a great
   {misfeature}).  (ITS partisans are apt to cite this as proof of
   UNIX's alleged bogosity; ITS had a working NFS-like shared file
   system with none of these problems in the early 1970s.)  See also
   {broadcast storm}.

:NIL: /nil/ No.  Used in reply to a question, particularly one
   asked using the `-P' convention.  Most hackers assume this derives
   simply from LISP terminology for `false' (see also {T}), but
   NIL as a negative reply was well-established among radio hams
   decades before the advent of LISP.  The historical connection
   between early hackerdom and the ham radio world was strong enough
   that this may have been an influence.

:Ninety-Ninety Rule: n. "The first 90% of the code accounts
   for the first 90% of the development time.  The remaining 10% of
   the code accounts for the other 90% of the development time."
   Attributed to Tom Cargill of Bell Labs, and popularized by Jon
   Bentley's September 1985 `Bumper-Sticker Computer Science'
   column in `Communications of the ACM'.  It was there called
   the "Rule of Credibility", a name which seems not to have stuck.

:NMI: /N-M-I/ n. Non-Maskable Interrupt.  An IRQ 7 on the PDP-11
   or 680[01234]0; the NMI line on an 80[1234]86.  In contrast with a
   {priority interrupt} (which might be ignored, although that is
   unlikely), an NMI is *never* ignored.

:no-op: /noh'op/ alt. NOP /nop/ [no operation] n. 1. (also v.)
   A machine instruction that does nothing (sometimes used in
   assembler-level programming as filler for data or patch areas, or
   to overwrite code to be removed in binaries).  See also {JFCL}.
   2. A person who contributes nothing to a project, or has nothing
   going on upstairs, or both.  As in "He's a no-op." 3. Any
   operation or sequence of operations with no effect, such as
   circling the block without finding a parking space, or putting
   money into a vending machine and having it fall immediately into
   the coin-return box, or asking someone for help and being told to
   go away.  "Oh, well, that was a no-op."  Hot-and-sour soup (see
   {great-wall}) that is insufficiently either is `no-op soup';
   so is wonton soup if everybody else is having hot-and-sour.

:noddy: /nod'ee/ [UK: from the children's books] adj.
   1. Small and un-useful, but demonstrating a point.  Noddy programs
   are often written by people learning a new language or system.  The
   archetypal noddy program is {hello, world}.  Noddy code may be
   used to demonstrate a feature or bug of a compiler.  May be used of
   real hardware or software to imply that it isn't worth using.
   "This editor's a bit noddy."  2. A program that is more or less
   instant to produce.  In this use, the term does not necessarily
   connote uselessness, but describes a {hack} sufficiently trivial
   that it can be written and debugged while carrying on (and during
   the space of) a normal conversation.  "I'll just throw together a
   noddy {awk} script to dump all the first fields."  In North
   America this might be called a {mickey mouse program}.  See
   {toy program}.

:NOMEX underwear: /noh'meks uhn'-der-weir/ [USENET] n. Syn.
   {asbestos longjohns}, used mostly in auto-related mailing lists
   and newsgroups.  NOMEX underwear is an actual product available on
   the racing equipment market, used as a fire resistance measure and
   required in some racing series.

: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},
   {AIDX}, {buglix}, {Macintrash}, {Telerat}, {Open
   DeathTrap}, {ScumOS}, {sun-stools}.

:non-optimal solution: n. (also `sub-optimal solution') An
   astoundingly stupid way to do something.  This term is generally
   used in deadpan sarcasm, as its impact is greatest when the person
   speaking looks completely serious.  Compare {stunning}.  See also
   {Bad Thing}.

:nonlinear: adj. [scientific computation] 1. Behaving in an erratic
   and unpredictable fashion; unstable.  When used to describe the
   behavior of a machine or program, it suggests that said machine or
   program is being forced to run far outside of design
   specifications.  This behavior may be induced by unreasonable
   inputs, or may be triggered when a more mundane bug sends the
   computation far off from its expected course.  2. When describing
   the behavior of a person, suggests a tantrum or a {flame}.
   "When you talk to Bob, don't mention the drug problem or he'll go
   nonlinear for hours."  In this context, `go nonlinear' connotes
   `blow up out of proportion' (proportion connotes linearity).

:nontrivial: adj. Requiring real thought or significant computing
   power.  Often used as an understated way of saying that a problem
   is quite difficult or impractical, or even entirely unsolvable
   ("Proving P=NP is nontrivial").  The preferred emphatic form is
   `decidedly nontrivial'.  See {trivial}, {uninteresting},
   {interesting}.

:not ready for prime time: adj.  Usable, but only just so; not very
   robust; for internal use only.  Said of a program or device.  Often
   connotes that the thing will be made more solid {Real Soon
   Now}.  This term comes from the ensemble name of the original cast
   of "Saturday Night Live", the "Not Ready for Prime Time
   Players".  It has extra flavor for hackers because of the special
   (though now semi-obsolescent) meaning of {prime time}.

:notwork: /not'werk/ n. A network, when it is acting {flaky} or is
   {down}.  Compare {nyetwork}.  Said at IBM to have orig.
   referred to a particular period of flakiness on IBM's VNET
   corporate network, ca. 1988; but there are independent reports of
   the term from elsewhere.

: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.

:nroff:: /en'rof/ [UNIX, from "new roff" (see {{troff}})] n. A
   companion program to the UNIX typesetter {{troff}}, accepting
   identical input but preparing output for terminals and line
   printers.

:NSA line eater: n. The National Security Agency trawling program
   sometimes assumed to be reading the net for the U.S. Government's
   spooks.  Most hackers describe it as a mythical beast, but some
   believe it actually exists, more aren't sure, and many believe in
   acting as though it exists just in case.  Some netters put loaded
   phrases like `KGB', `Uzi', `nuclear materials',
   `Palestine', `cocaine', and `assassination' in their {sig
   block}s in a (probably futile) attempt to confuse and overload the
   creature.  The {GNU} version of {EMACS} actually has a
   command that randomly inserts a bunch of insidious anarcho-verbiage
   into your edited text.

   There is a mainstream variant of this myth involving a `Trunk Line
   Monitor', which supposedly used speech recognition to extract words
   from telephone trunks.  This one was making the rounds in the
   late 1970s, spread by people who had no idea of then-current
   technology or the storage, signal-processing, or speech recognition
   needs of such a project.  On the basis of mass-storage costs alone
   it would have been cheaper to hire 50 high-school students and just
   let them listen in.  Speech-recognition technology can't do this
   job even now (1993), and almost certainly won't in this millennium,
   either.  The peak of silliness came with a letter to an alternative
   paper in New Haven, Connecticut, laying out the factoids of this
   Big Brotherly affair.  The letter writer then revealed his actual
   agenda by offering --- at an amazing low price, just this once, we
   take VISA and MasterCard --- a scrambler guaranteed to daunt the
   Trunk Trawler and presumably allowing the would-be Baader-Meinhof
   gangs of the world to get on with their business.

:nude: adj. Said of machines delivered without an operating system
   (compare {bare metal}).  "We ordered 50 systems, but they all
   arrived nude, so we had to spend a an extra weekend with the
   install-tapes."  This usage is a recent innovation reflecting the
   fact that most PC clones are now delivered with DOS or Microsoft
   Windows pre-installed at the factory.  Other kinds of hardware are
   still normally delivered without OS, so this term is particular to
   PC support groups.

:nuke: /n[y]ook/ vt. 1. To intentionally delete the entire
   contents of a given directory or storage volume.  "On UNIX,
   `rm -r /usr' will nuke everything in the usr filesystem."
   Never used for accidental deletion.  Oppose {blow away}.
   2. Syn. for {dike}, applied to smaller things such as files,
   features, or code sections.  Often used to express a final verdict.
   "What do you want me to do with that 80-meg {wallpaper} file?"
   "Nuke it."  3. Used of processes as well as files; nuke is a
   frequent verbal alias for `kill -9' on UNIX.  4. On IBM PCs,
   a bug that results in {fandango on core} can trash the operating
   system, including the FAT (the in-core copy of the disk block
   chaining information).  This can utterly scramble attached disks,
   which are then said to have been `nuked'.  This term is also used
   of analogous lossages on Macintoshes and other micros without
   memory protection.

:number-crunching: n. Computations of a numerical nature, esp.
   those that make extensive use of floating-point numbers.  The only
   thing {Fortrash} is good for.  This term is in widespread
   informal use outside hackerdom and even in mainstream slang, but
   has additional hackish connotations: namely, that the computations
   are mindless and involve massive use of {brute force}.  This is
   not always {evil}, esp. if it involves ray tracing or fractals
   or some other use that makes {pretty pictures}, esp. if such
   pictures can be used as {wallpaper}.  See also {crunch}.

:numbers: [scientific computation] n. Output of a computation that
   may not be significant results but at least indicate that the
   program is running.  May be used to placate management, grant
   sponsors, etc.  `Making numbers' means running a program
   because output --- any output, not necessarily meaningful output
   --- is needed as a demonstration of progress.  See {pretty
   pictures}, {math-out}, {social science number}.

:NUXI problem: /nuk'see pro'bl*m/ n. This refers to the problem of
   transferring data between machines with differing byte-order.  The
   string `UNIX' might look like `NUXI' on a machine with a
   different `byte sex' (e.g., when transferring data from a
   {little-endian} to a {big-endian}, or vice-versa).  See also
   {middle-endian}, {swab}, and {bytesexual}.

:nybble: /nib'l/ (alt. `nibble') [from v. `nibble' by analogy
   with `bite' => `byte'] n. Four bits; one {hex} digit;
   a half-byte.  Though `byte' is now techspeak, this useful relative
   is still jargon.  Compare {{byte}}, {crumb}, {tayste},
   {dynner}; see also {bit}, {nickle}, {deckle}.  Apparently
   this spelling is uncommon in Commonwealth Hackish, as British
   orthography suggests the pronunciation /ni:'bl/.

:nyetwork: /nyet'werk/ [from Russian `nyet' = no] n. A network,
   when it is acting {flaky} or is {down}.  Compare {notwork}.

= O =
=====

:Ob-: /ob/ pref. Obligatory.  A piece of {netiquette}
   acknowledging that the author has been straying from the
   newsgroup's charter topic.  For example, if a posting in alt.sex is
   a response to a part of someone else's posting that has nothing
   particularly to do with sex, the author may append `ObSex' (or
   `Obsex') and toss off a question or vignette about some unusual
   erotic act.  It is considered a sign of great {winnitude} when
   your Obs are more interesting than other people's whole postings.

:Obfuscated C Contest: n. An annual contest run since 1984 over
   USENET by Landon Curt Noll and friends.  The overall winner is
   whoever produces the most unreadable, creative, and bizarre (but
   working) C program; various other prizes are awarded at the judges'
   whim.  C's terse syntax and macro-preprocessor facilities give
   contestants a lot of maneuvering room.  The winning programs often
   manage to be simultaneously (a) funny, (b) breathtaking works of
   art, and (c) horrible examples of how *not* to code in C.

   This relatively short and sweet entry might help convey the flavor
   of obfuscated C:

     /*
      * HELLO WORLD program
      * by Jack Applin and Robert Heckendorn, 1985
      */
     main(v,c)char**c;{for(v[c++]="Hello, world!\n)";
     (!!c)[*c]&&(v--||--c&&execlp(*c,*c,c[!!c]+!!c,!c));
     **c=!c)write(!!*c,*c,!!**c);}

   Here's another good one:

     /*
      * Program to compute an approximation of pi
      *  by Brian Westley, 1988
      */

     #define _ -F<00||--F-OO--;
     int F=00,OO=00;
     main(){F_OO();printf("%1.3f\n",4.*-F/OO/OO);}F_OO()
     {
                 _-_-_-_
            _-_-_-_-_-_-_-_-_
         _-_-_-_-_-_-_-_-_-_-_-_
       _-_-_-_-_-_-_-_-_-_-_-_-_-_
      _-_-_-_-_-_-_-_-_-_-_-_-_-_-_
      _-_-_-_-_-_-_-_-_-_-_-_-_-_-_
     _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
     _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
     _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
     _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
      _-_-_-_-_-_-_-_-_-_-_-_-_-_-_
      _-_-_-_-_-_-_-_-_-_-_-_-_-_-_
       _-_-_-_-_-_-_-_-_-_-_-_-_-_
         _-_-_-_-_-_-_-_-_-_-_-_
             _-_-_-_-_-_-_-_
                 _-_-_-_
     }

   Note that this program works by computing uts own area.  For more
   digits, write a bigger program.  See also {hello, world}.
   

:obi-wan error: /oh'bee-won` er'*r/ [RPI, from `off-by-one' and
   the Obi-Wan Kenobi character in "Star Wars"] n. A loop of
   some sort in which the index is off by 1.  Common when the index
   should have started from 0 but instead started from 1.  A kind of
   {off-by-one error}.  See also {zeroth}.

:Objectionable-C: n. Hackish take on "Objective-C", the name of
   an object-oriented dialect of C in competition with the
   better-known C++ (it is used to write native applications on the
   NeXT machine).  Objectionable-C uses a Smalltalk-like syntax, but
   lacks the flexibility of Smalltalk method calls, and (like many
   such efforts) comes frustratingly close to attaining the {Right
   Thing} without actually doing so.

:obscure: adj. Used in an exaggeration of its normal meaning, to
   imply total incomprehensibility.  "The reason for that last crash
   is obscure."  "The `find(1)' command's syntax is obscure!"
   The phrase `moderately obscure' implies that it could be
   figured out but probably isn't worth the trouble.  The construction
   `obscure in the extreme' is the preferred emphatic form.

:octal forty: /ok'tl for'tee/ n. Hackish way of saying "I'm
   drawing a blank."  Octal 40 is the {{ASCII}} space character,
   0100000; by an odd coincidence, {hex} 40 (01000000) is the
   {{EBCDIC}} space character.  See {wall}.

:off the trolley: adj. Describes the behavior of a program that
   malfunctions and goes catatonic, but doesn't actually {crash} or
   abort.  See {glitch}, {bug}, {deep space}.

:off-by-one error: n. Exceedingly common error induced in many
   ways, such as by starting at 0 when you should have started at 1 or
   vice versa, or by writing `< N' instead of `<= N' or
   vice-versa.  Also applied to giving something to the person next to
   the one who should have gotten it.  Often confounded with
   {fencepost error}, which is properly a particular subtype of it.

:offline: adv. Not now or not here.  "Let's take this
   discussion offline."  Specifically used on {USENET} to suggest
   that a discussion be taken off a public newsgroup to email.

:ogg: /awg/ [CMU] v. 1. In the multi-player space combat game
   Netrek, to execute kamikaze attacks against enemy ships which are
   carrying armies or occupying strategic positions.  Named during a
   game in which one of the players repeatedly used the tactic while
   playing Orion ship G, showing up in the player list as "Og".
   This trick has been roundly denounced by those who would return to
   the good old days when the tactic of dogfighting was dominant, but
   as Sun Tzu wrote, "What is of supreme importance in war is to
   attack the enemy's strategy."  However, the traditional answer to
   the newbie question "What does ogg mean?" is just "Pick up some
   armies and I'll show you."  2. In other games, to forcefully
   attack an opponent with the expectation that the resources expended
   will be renewed faster than the opponent will be able to regain his
   previous advantage.  Taken more seriously as a tactic since it has
   gained a simple name.  3. To do anything forcefully, possibly
   without consideration of the drain on future resources.  "I guess
   I'd better go ogg the problem set that's due tomorrow."  "Whoops!
   I looked down at the map for a sec and almost ogged that oncoming
   car."

:old fart: n. Tribal elder.  A title self-assumed with remarkable
   frequency by (esp.) USENETters who have been programming for more
   than about 25 years; often appears in {sig block}s attached to
   Jargon File contributions of great archeological significance.
   This is a term of insult in the second or third person but one of
   pride in first person.

:Old Testament: n. [C programmers] The first edition of {K&R}, the
   sacred text describing {Classic C}.

: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 that 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 (another
   source claims it's three bananas and one grape, but observes
   "However, this is subject to local variations, cosmic rays and
   ISO").  At a complication level any higher than that, one asks the
   manufacturers to send someone around to check things.

   See also {Infinite-Monkey Theorem}.

:one-line fix: n. Used (often sarcastically) of a change to a
   program that is thought to be trivial or insignificant right up to
   the moment it crashes the system.  Usually `cured' by another
   one-line fix.  See also {I didn't change anything!}

:one-liner wars: n. A game popular among hackers who code in the
   language APL (see {write-only language} and {line noise}).
   The objective is to see who can code the most interesting and/or
   useful routine in one line of operators chosen from
   APL's exceedingly {hairy} primitive set.  A similar amusement
   was practiced among {TECO} hackers and is now popular among
   {Perl} aficionados.
   
   Ken Iverson, the inventor of APL, has been credited with a
   one-liner that, given a number N, produces a list of the
   prime numbers from 1 to N inclusive.  It looks like this:

        (2 = 0 +.= T o.| T) / T <- iN

   where `o' is the APL null character, the assignment arrow is a
   single character, and `i' represents the APL iota.

:ooblick: /oo'blik/ [from the Dr. Seuss title `Bartholomew
   and the Oobleck'] n. A bizarre semi-liquid sludge made from
   cornstarch and water.  Enjoyed among hackers who make batches
   during playtime at parties for its amusing and extremely
   non-Newtonian behavior; it pours and splatters, but resists rapid
   motion like a solid and will even crack when hit by a hammer.
   Often found near lasers.

   Here is a field-tested ooblick recipe contributed by GLS:

     1 cup cornstarch

     1 cup baking soda

     3/4 cup water

     N drops of food coloring

   This recipe isn't quite as non-Newtonian as a pure cornstarch
   ooblick, but has an appropriately slimy feel.

   Some, however, insist that the notion of an ooblick *recipe*
   is far too mechanical, and that it is best to add the water in
   small increments so that the various mixed states the cornstarch
   goes through as it *becomes* ooblick can be grokked in
   fullness by many hands.  For optional ingredients of this
   experience, see the "{Ceremonial Chemicals}" section of
   {Appendix B}.

:op: /op/ n. 1 [IRC] 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 interchangeably with {CHOP}.  Compare
   {sysop}.  2. In England and Ireland, common verbal abbreviation
   for `operator', as in system operator.  Less common in the U.S.,
   where {sysop} seems to be preferred.

:open: n. Abbreviation for `open (or left) parenthesis' --- used when
   necessary to eliminate oral ambiguity.  To read aloud the LISP form
   (DEFUN FOO (X) (PLUS X 1)) one might say: "Open defun foo, open
   eks close, open, plus eks one, close close."

:Open DeathTrap: n. Abusive hackerism for the Santa Cruz
   Operation's `Open DeskTop' product, a Motif-based graphical
   interface over their UNIX.  The funniest part is that this was
   coined by SCO's own developers...compare {AIDX},
   {terminak}, {Macintrash} {Nominal Semidestructor},
   {ScumOS}, {sun-stools}, {HP-SUX}.

:open switch: [IBM: prob. from railroading] n. An unresolved
   question, issue, or problem.

:operating system:: [techspeak] n. (Often abbreviated `OS') The
   foundation software of a machine, of course; that which schedules
   tasks, allocates storage, and presents a default interface to the
   user between applications.  The facilities an operating system
   provides and its general design philosophy exert an extremely
   strong influence on programming style and on the technical cultures
   that grow up around its host machines.  Hacker folklore has been
   shaped primarily by the {{UNIX}}, {{ITS}}, {{TOPS-10}},
   {{TOPS-20}}/{{TWENEX}}, {{WAITS}}, {{CP/M}}, {{MS-DOS}}, and
   {{Multics}} operating systems (most importantly by ITS and
   UNIX).

:optical diff: n. See {vdiff}.

:optical grep: n. See {vgrep}.

:optimism: n. What a programmer is full of after fixing what is
   presumably the last bug and just before actually discovering a next
   last bug . Fred Brooks's book `The Mythical Man-Month' (See
   `Brooks's Law'.) contains the following paragraph that describes
   this extremely well:

     All programmers are optimists. Perhaps this
     modern sorcery especially attracts those who believe in happy
     endings and fairy god-mothers. Perhaps the hundreds of nitty
     frustrations drive away all but those who habitually focus on the
     end goal. Perhaps it is merely that computers are young,
     programmers are younger, and the young are always optimists. But
     however the selection process works, the result is indisputable:
     "This time it will surely run," or "I just found the last bug.".

   See also {Lubarsky's Law of Cybernetic Entomology}.

:Orange Book: n. The U.S. Government's standards document
   `Trusted Computer System Evaluation Criteria, DOD standard
   5200.28-STD, December, 1985' which characterize secure computing
   architectures and defines levels A1 (most secure) through D
   (least).  Stock UNIXes are roughly C1, and can be upgraded to
   about C2 without excessive pain.  See also {{crayola books}},
   {{book titles}}.

:oriental food:: n. Hackers display an intense tropism towards
   oriental cuisine, especially Chinese, and especially of the spicier
   varieties such as Szechuan and Hunan.  This phenomenon (which has
   also been observed in subcultures that overlap heavily with
   hackerdom, most notably science-fiction fandom) has never been
   satisfactorily explained, but is sufficiently intense that one can
   assume the target of a hackish dinner expedition to be the best
   local Chinese place and be right at least three times out of four.
   See also {ravs}, {great-wall}, {stir-fried random},
   {laser chicken}, {Yu-Shiang Whole Fish}.  Thai, Indian,
   Korean, and Vietnamese cuisines are also quite popular.

:orphan: [UNIX] n. A process whose parent has died; one inherited by
   `init(1)'.  Compare {zombie}.

:orphaned i-node: /or'f*nd i:'nohd/ [UNIX] n. 1. [techspeak] A
   file that retains storage but no longer appears in the directories
   of a filesystem.  2. By extension, a pejorative for any person no
   longer serving a useful function within some organization, esp.
   {lion food} without subordinates.

:orthogonal: [from mathematics] adj. Mutually independent; well
   separated; sometimes, irrelevant to.  Used in a generalization of
   its mathematical meaning to describe sets of primitives or
   capabilities that, like a vector basis in geometry, span the
   entire `capability space' of the system and are in some sense
   non-overlapping or mutually independent.  For example, in
   architectures such as the PDP-11 or VAX where all or nearly all
   registers can be used interchangeably in any role with respect to
   any instruction, the register set is said to be orthogonal.  Or, in
   logic, the set of operators `not' and `or' is orthogonal,
   but the set `nand', `or', and `not' is not (because any
   one of these can be expressed in terms of the others).  Also used
   in comments on human discourse: "This may be orthogonal to the
   discussion, but...."

:OS: /O-S/ 1. [Operating System] n. An abbreviation heavily used in email,
   occasionally in speech.  2. n.,obs. On ITS, an output spy.  See
   "{OS and JEDGAR}" (in {Appendix A}).

:OS/2: /O S too/ n. The anointed successor to MS-DOS for Intel
   286- and 386-based micros; proof that IBM/Microsoft couldn't get it
   right the second time, either.  Mentioning it is usually good for a
   cheap laugh among hackers --- the design was so {baroque}, and
   the implementation of 1.x so bad, that 3 years after introduction
   you could still count the major {app}s shipping for it on the
   fingers of two hands --- in unary.  Often called `Half-an-OS'.  On
   January 28, 1991, Microsoft announced that it was dropping its OS/2
   development to concentrate on Windows, leaving the OS entirely in
   the hands of IBM; on January 29 they claimed the media had got the
   story wrong, but were vague about how.  It looks as though OS/2 is
   moribund.  See {vaporware}, {monstrosity}, {cretinous},
   {second-system effect}.

:out-of-band: [from telecommunications and network theory] adj.
   1. In software, describes values of a function which are not in its
   `natural' range of return values, but are rather signals that
   some kind of exception has occurred.  Many C functions, for
   example, return either a nonnegative integral value, or indicate
   failure with an out-of-band return value of -1.  Compare
   {hidden flag}, {green bytes}.  2. Also sometimes used to
   describe what communications people call `shift characters',
   like the ESC that leads control sequences for many terminals, or
   the level shift indicators in the old 5-bit Baudot codes.  3. In
   personal communication, using methods other than email, such as
   telephones or {snail-mail}.

:overflow bit: n. 1. [techspeak] On some processors, an attempt to
   calculate a result too large for a register to hold causes a
   particular {flag} called an {overflow bit} to be set.
   2. Hackers use the term of human thought too.  "Well, the {{Ada}}
   description was {baroque} all right, but I could hack it OK until
   they got to the exception handling ... that set my overflow bit."
   3. The hypothetical bit that will be set if a hacker doesn't get to
   make a trip to the Room of Porcelain Fixtures: "I'd better process
   an internal interrupt before the overflow bit gets set".

: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 is replaced by `overflow {stack}'.

:overrun: n. 1. [techspeak] Term for a frequent consequence of data
   arriving faster than it can be consumed, esp. in serial line
   communications.  For example, at 9600 baud there is almost exactly
   one character per millisecond, so if your {silo} can hold only
   two characters and the machine takes longer than 2 msec to get to
   service the interrupt, at least one character will be lost.
   2. Also applied to non-serial-I/O communications. "I forgot to pay
   my electric bill due to mail overrun."  "Sorry, I got four phone
   calls in 3 minutes last night and lost your message to overrun."
   When {thrash}ing at tasks, the next person to make a request
   might be told "Overrun!"  Compare {firehose syndrome}. 3. More
   loosely, may refer to a {buffer overflow} not necessarily
   related to processing time (as in {overrun screw}).

:overrun screw: [C programming] n. A variety of {fandango on
   core} produced by scribbling past the end of an array (C
   implementations typically have no checks for this error).  This is
   relatively benign and easy to spot if the array is static; if it is
   auto, the result may be to {smash the stack} --- often resulting
   in {heisenbug}s of the most diabolical subtlety.  The term
   `overrun screw' is used esp. of scribbles beyond the end of
   arrays allocated with `malloc(3)'; this typically trashes the
   allocation header for the next block in the {arena}, producing
   massive lossage within malloc and often a core dump on the next
   operation to use `stdio(3)' or `malloc(3)' itself.  See
   {spam}, {overrun}; see also {memory leak}, {memory
   smash}, {aliasing bug}, {precedence lossage}, {fandango on
   core}, {secondary damage}.

= P =
=====

:P-mail: n. Physical mail, as opposed to {email}.  Synonymous
   with {snail-mail}.

:P.O.D.: /P-O-D/ Acronym for `Piece Of Data' (as opposed to a
   code section). Usage: pedantic and rare.  See also {pod}.

:padded cell: n. Where you put {luser}s so they can't hurt
   anything.  A program that limits a luser to a carefully restricted
   subset of the capabilities of the host system (for example, the
   `rsh(1)' utility on USG UNIX).  Note that this is different
   from an {iron box} because it is overt and not aimed at
   enforcing security so much as protecting others (and the luser)
   from the consequences of the luser's boundless naivet'e (see
   {naive}).  Also `padded cell environment'.

:page in: [MIT] vi. 1. To become aware of one's surroundings again
   after having paged out (see {page out}).  Usually confined to
   the sarcastic comment: "Eric pages in.  Film at 11."  See
   {film at 11}.  2. Syn. `swap in'; see {swap}.

:page out: [MIT] vi. 1. To become unaware of one's surroundings
   temporarily, due to daydreaming or preoccupation.  "Can you repeat
   that?  I paged out for a minute."  See {page in}.  Compare
   {glitch}, {thinko}.  2. Syn. `swap out'; see {swap}.

:pain in the net: n. A {flamer}.

:paper-net: n. Hackish way of referring to the postal service,
   analogizing it to a very slow, low-reliability network.  USENET
   {sig block}s sometimes include a "Paper-Net:" header just
   before the sender's postal address; common variants of this are
   "Papernet" and "P-Net".  Note that the standard {netiquette}
   guidelines discourage this practice as a waste of bandwidth, since
   netters are quite unlikely to casually use postal addresses.
   Compare {voice-net}, {snail-mail}, {P-mail}.

:param: /p*-ram'/ n. Shorthand for `parameter'.  See also
   {parm}; compare {arg}, {var}.

:PARC: n. See {XEROX PARC}.

:parent message: n. See {followup}.

:parity errors: pl.n. Little lapses of attention or (in more severe
   cases) consciousness, usually brought on by having spent all night
   and most of the next day hacking.  "I need to go home and crash;
   I'm starting to get a lot of parity errors."  Derives from a
   relatively common but nearly always correctable transient error in
   RAM hardware.

:Parkinson's Law of Data: prov. "Data expands to fill the space
   available for storage"; buying more memory encourages the use of
   more memory-intensive techniques.  It has been observed over the
   last 10 years that the memory usage of evolving systems tends to
   double roughly once every 18 months.  Fortunately, memory density
   available for constant dollars tends to double about once every
   12 months (see {Moore's Law}); unfortunately, the laws of
   physics guarantee that the latter cannot continue indefinitely.

:parm: /parm/ n. Further-compressed form of {param}.  This term
   is an IBMism, and written use is almost unknown outside IBM
   shops; spoken /parm/ is more widely distributed, but the synonym
   {arg} is favored among hackers.  Compare {arg}, {var}.

:parse: [from linguistic terminology] vt. 1. To determine the
   syntactic structure of a sentence or other utterance (close to the
   standard English meaning).  "That was the one I saw you."  "I
   can't parse that."  2. More generally, to understand or
   comprehend.  "It's very simple; you just kretch the glims and then
   aos the zotz."  "I can't parse that."  3. Of fish, to have to
   remove the bones yourself.  "I object to parsing fish", means "I
   don't want to get a whole fish, but a sliced one is okay".  A
   `parsed fish' has been deboned.  There is some controversy over
   whether `unparsed' should mean `bony', or also mean
   `deboned'.

: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.

:pastie: /pay'stee/ n. An adhesive-backed label designed to be
   attached to a key on a keyboard to indicate some non-standard
   character which can be accessed through that key.  Pasties are
   likely to be used in APL environments, where almost every key is
   associated with a special character.  A pastie on the R key, for
   example, would remind the user that it is used to generate the rho
   character.  The term properly refers to nipple-concealing devices
   formerly worn by strippers in concession to indecent-exposure
   laws; compare {tits on a keyboard}.

:patch: 1. n. A temporary addition to a piece of code, usually as a
   {quick-and-dirty} remedy to an existing bug or misfeature.  A
   patch may or may not work, and may or may not eventually be
   incorporated permanently into the program.  Distinguished from a
   {diff} or {mod} by the fact that a patch is generated by more
   primitive means than the rest of the program; the classical
   examples are instructions modified by using the front panel
   switches, and changes made directly to the binary executable of a
   program originally written in an {HLL}.  Compare {one-line
   fix}.  2. vt. To insert a patch into a piece of code.  3. [in the
   UNIX world] n. A {diff} (sense 2).  4. A set of modifications to
   binaries to be applied by a patching program.  IBM operating
   systems often receive updates to the operating system in the form
   of absolute hexadecimal patches.  If you have modified your OS, you
   have to disassemble these back to the source.  The patches might
   later be corrected by other patches on top of them (patches were
   said to "grow scar tissue").  The result was often a convoluted
   {patch space} and headaches galore.  5. [UNIX] the
   `patch(1)' program, written by Larry Wall, which automatically
   applies a patch (sense 3) to a set of source code.

   There is a classic story of a {tiger team} penetrating a secure
   military computer that illustrates the danger inherent in binary
   patches (or, indeed, any that you can't --- or don't --- inspect
   and examine before installing).  They couldn't find any {trap
   door}s or any way to penetrate security of IBM's OS, so they made a
   site visit to an IBM office (remember, these were official military
   types who were purportedly on official business), swiped some IBM
   stationery, and created a fake patch.  The patch was actually the
   trapdoor they needed.  The patch was distributed at about the right
   time for an IBM patch, had official stationery and all accompanying
   documentation, and was dutifully installed.  The installation
   manager very shortly thereafter learned something about proper
   procedures.

:patch space: n. An unused block of bits left in a binary so that
   it can later be modified by insertion of machine-language
   instructions there (typically, the patch space is modified to
   contain new code, and the superseded code is patched to contain a
   jump or call to the patch space).  The widening use of HLLs has
   made this term rare; it is now primarily historical outside IBM
   shops.  See {patch} (sense 4), {zap} (sense 4), {hook}.

:path: n. 1. A {bang path} or explicitly routed {{Internet
   address}}; a node-by-node specification of a link between two
   machines.  2. [UNIX] A filename, fully specified relative to the
   root directory (as opposed to relative to the current directory;
   the latter is sometimes called a `relative path'). This is also
   called a `pathname'.  3. [UNIX and MS-DOS] The `search
   path', an environment variable specifying the directories in which
   the {shell} (COMMAND.COM, under MS-DOS) should look for commands.
   Other, similar constructs abound under UNIX (for example, the
   C preprocessor has a `search path' it uses in looking for
   `#include' files).

:pathological: adj. 1. [scientific computation] Used of a data set
   that is grossly atypical of normal expected input, esp. one that
   exposes a weakness or bug in whatever algorithm one is using.  An
   algorithm that can be broken by pathological inputs may still be
   useful if such inputs are very unlikely to occur in practice.
   2. When used of test input, implies that it was purposefully
   engineered as a worst case.  The implication in both senses is that
   the data is spectacularly ill-conditioned or that someone had to
   explicitly set out to break the algorithm in order to come up with
   such a crazy example.  3. Also said of an unlikely collection of
   circumstances.  "If the network is down and comes up halfway
   through the execution of that command by root, the system may
   just crash."  "Yes, but that's a pathological case."  Often used
   to dismiss the case from discussion, with the implication that the
   consequences are acceptable since that they will happen so
   infrequently (if at all) that there is no justification for
   going to extra trouble to handle that case (see sense 1).

:payware: /pay'weir/ n. Commercial software.  Oppose {shareware}
   or {freeware}.

:PBD: /P-B-D/ [abbrev. of `Programmer Brain Damage'] n. Applied
   to bug reports revealing places where the program was obviously
   broken by an incompetent or short-sighted programmer.  Compare
   {UBD}; see also {brain-damaged}.

:PC-ism: /P-C-izm/ n. A piece of code or coding technique that
   takes advantage of the unprotected single-tasking environment in
   IBM PCs and the like, e.g., by busy-waiting on a hardware register,
   direct diddling of screen memory, or using hard timing loops.
   Compare {ill-behaved}, {vaxism}, {unixism}.  Also,
   `PC-ware' n., a program full of PC-isms on a machine with a more
   capable operating system.  Pejorative.

:PD: /P-D/ adj. Common abbreviation for `public domain', applied
   to software distributed over {USENET} and from Internet archive
   sites.  Much of this software is not in fact public domain in
   the legal sense but travels under various copyrights granting
   reproduction and use rights to anyone who can {snarf} a copy.  See
   {copyleft}.

:PDL: 1. n. `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}}.  2. v. To design using a program design
   language.  "I've been pdling so long my eyes won't focus beyond 2
   feet." 3. n. `Page Description Language'.  Refers to any language
   which is used to control a graphics device, usually a laserprinter.
   The most common example is, of course, Adobe's {{PostScript}}
   language, but there are many others, such as Xerox InterPress,
   etc.

:pdl: /pid'l/ or /puhd'l/ [abbreviation for `Push Down List']
   1. n. In ITS days, the preferred MITism for {stack}.  See
   {overflow pdl}.  2. n. Dave Lebling, one of the co-authors of
   {Zork}; (his {network address} on the ITS machines was at one
   time pdl@dms). 2. Rarely, sny sense of {PDL}, as these are not
   invariably capitalized.

:PDP-10: [Programmed Data Processor model 10] n. The machine that
   made timesharing real.  It looms large in hacker folklore because
   of its adoption in the mid-1970s by many university computing
   facilities and research labs, including the MIT AI Lab, Stanford,
   and CMU.  Some aspects of the instruction set (most notably the
   bit-field instructions) are still considered unsurpassed.  The 10
   was eventually eclipsed by the VAX machines (descendants of the
   PDP-11) when DEC recognized that the 10 and VAX product lines were
   competing with each other and decided to concentrate its software
   development effort on the more profitable VAX.  The machine was
   finally dropped from DEC's line in 1983, following the failure of
   the Jupiter Project at DEC to build a viable new model. (Some
   attempts by other companies to market clones came to nothing; see
   {Foonly}) This event spelled the doom of {{ITS}} and the
   technical cultures that had spawned the original Jargon File, but
   by mid-1991 it had become something of a badge of honorable
   old-timerhood among hackers to have cut one's teeth on a PDP-10.
   See {{TOPS-10}}, {{ITS}}, {AOS}, {BLT}, {DDT}, {DPB},
   {EXCH}, {HAKMEM}, {JFCL}, {LDB}, {pop}, {push},
   {Appendix A}.

:PDP-20: n. The most famous computer that never was.  {PDP-10}
   computers running the {{TOPS-10}} operating system were labeled
   `DECsystem-10' as a way of differentiating them from the PDP-11.
   Later on, those systems running {TOPS-20} were labeled
   `DECSYSTEM-20' (the block capitals being the result of a lawsuit
   brought against DEC by Singer, which once made a computer called
   `system-10'), but contrary to popular lore there was never a
   `PDP-20'; the only difference between a 10 and a 20 was the
   operating system and the color of the paint.  Most (but not all)
   machines sold to run TOPS-10 were painted `Basil Blue', whereas
   most TOPS-20 machines were painted `Chinese Red' (often mistakenly
   called orange).

:peek: n.,vt. (and {poke}) The commands in most microcomputer
   BASICs for directly accessing memory contents at an absolute
   address; often extended to mean the corresponding constructs in any
   {HLL} (peek reads memory, poke modifies it).  Much hacking on
   small, non-MMU micros consists of `peek'ing around memory, more
   or less at random, to find the location where the system keeps
   interesting stuff.  Long (and variably accurate) lists of such
   addresses for various computers circulate (see {{interrupt list,
   the}}).  The results of `poke's at these addresses may be highly
   useful, mildly amusing, useless but neat, or (most likely) total
   {lossage} (see {killer poke}).

   Since a {real operating system} provides useful, higher-level
   services for the tasks commonly performed with peeks and pokes on
   micros, and real languages tend not to encourage low-level memory
   groveling, a question like "How do I do a peek in C?" is
   diagnostic of the {newbie}.  (Of course, OS kernels often have to
   do exactly this; a real C hacker would unhesitatingly, if
   unportably, assign an absolute address to a pointer variable and
   indirect through it.)

:pencil and paper: n. An archaic information storage and
   transmission device that works by depositing smears of graphite on
   bleached wood pulp.  More recent developments in paper-based
   technology include improved `write-once' update devices which use
   tiny rolling heads similar to mouse balls to deposit colored
   pigment.  All these devices require an operator skilled at
   so-called `handwriting' technique.  These technologies are
   ubiquitous outside hackerdom, but nearly forgotten inside it.  Most
   hackers had terrible handwriting to begin with, and years of
   keyboarding tend to have encouraged it to degrade further.  Perhaps
   for this reason, hackers deprecate pencil-and-paper technology and
   often resist using it in any but the most trivial contexts.  See
   also {Appendix B}.

:peon: n. A person with no special ({root} or {wheel})
   privileges on a computer system.  "I can't create an account on
   *foovax* for you; I'm only a peon there."

:percent-S: /per-sent' es'/ [From the code in C's `printf(3)'
   library function used to insert an arbitrary string argument] n. An
   unspecified person or object.  "I was just talking to some
   percent-s in administration."  Compare {random}.

:perf: /perf/ n. See {chad} (sense 1).  The term `perfory'
   /per'f*-ree/ is also heard. The term {perf} may also refer to
   the perforations themselves, rather than the chad they produce when
   torn.

:perfect programmer syndrome: n. Arrogance; the egotistical
   conviction that one is above normal human error.  Most frequently
   found among programmers of some native ability but relatively
   little experience (especially new graduates; their perceptions may
   be distorted by a history of excellent performance at solving {toy
   problem}s).  "Of course my program is correct, there is no need to
   test it."  "Yes, I can see there may be a problem here, but
   *I'll* never type `rm -r /' while in {root}."

:Perl: /perl/ [Practical Extraction and Report Language, a.k.a
   Pathologically Eclectic Rubbish Lister] n. An interpreted language
   developed by Larry Wall <lwall@jpl.nasa.gov>, author of
   `patch(1)' and `rn(1)') and distributed over USENET.
   Superficially resembles `awk(1)', but is much hairier (see
   {awk}).  UNIX sysadmins, who are almost always incorrigible
   hackers, increasingly consider it one of the {languages of
   choice}.  Perl has been described, in a parody of a famous remark
   about `lex(1)', as the "Swiss-Army chainsaw" of UNIX
   programming.

:person of no account: [University of California at Santa Cruz] n.
   Used when referring to a person with no {network address}, frequently
   to forestall confusion.  Most often as part of an introduction:
   "This is Bill, a person of no account, but he used to be
   bill@random.com".  Compare {return from the dead}.

:pessimal: /pes'im-l/ [Latin-based antonym for `optimal'] adj.
   Maximally bad.  "This is a pessimal situation."  Also `pessimize'
   vt. To make as bad as possible.  These words are the obvious
   Latin-based antonyms for `optimal' and `optimize', but for some
   reason they do not appear in most English dictionaries, although
   `pessimize' is listed in the OED.

:pessimizing compiler: /pes'*-mi:z`ing k*m-pi:l'r/ [antonym of
   `optimizing compiler'] n. A compiler that produces object code that
   is worse than the straightforward or obvious hand translation.  The
   implication is that the compiler is actually trying to optimize the
   program, but through excessive cleverness is doing the opposite.  A
   few pessimizing compilers have been written on purpose, however, as
   pranks or burlesques.

:peta-: /pe't*/ [SI] pref. See {{quantifiers}}.

:PETSCII: /pet'skee/ [abbreviation of PET ASCII] n. The variation
   (many would say perversion) of the {{ASCII}} character set used by
   the Commodore Business Machines PET series of personal computers
   and the later Commodore C64, C16, and C128 machines.  The PETSCII
   set used left-arrow and up-arrow (as in old-style ASCII) instead of
   underscore and caret, placed the unshifted alphabet at positions
   65--90, put the shifted alphabet at positions 193--218, and added
   graphics characters.

:phage: n. A program that modifies other programs or databases in
   unauthorized ways; esp. one that propagates a {virus} or
   {Trojan horse}.  See also {worm}, {mockingbird}.  The
   analogy, of course, is with phage viruses in biology.

:phase: 1. n. The phase of one's waking-sleeping schedule with
   respect to the standard 24-hour cycle.  This is a useful concept
   among people who often work at night and/or according to no fixed
   schedule.  It is not uncommon to change one's phase by as much as 6
   hours per day on a regular basis.  "What's your phase?"  "I've
   been getting in about 8 P.M. lately, but I'm going to {wrap
   around} to the day schedule by Friday."  A person who is roughly
   12 hours out of phase is sometimes said to be in `night mode'.
   (The term `day mode' is also (but less frequently) used, meaning
   you're working 9 to 5 (or, more likely, 10 to 6).)  The act of
   altering one's cycle is called `changing phase'; `phase
   shifting' has also been recently reported from Caltech.
   2. `change phase the hard way': To stay awake for a very long
   time in order to get into a different phase.  3. `change phase
   the easy way': To stay asleep, etc.  However, some claim that
   either staying awake longer or sleeping longer is easy, and that it
   is *shortening* your day or night that's hard (see {wrap
   around}).  The `jet lag' that afflicts travelers who cross many
   time-zone boundaries may be attributed to two distinct causes: the
   strain of travel per se, and the strain of changing phase.  Hackers
   who suddenly find that they must change phase drastically in a
   short period of time, particularly the hard way, experience
   something very like jet lag without traveling.

:phase of the moon: n. Used humorously as a random parameter on which
   something is said to depend.  Sometimes implies unreliability of
   whatever is dependent, or that reliability seems to be dependent on
   conditions nobody has been able to determine.  "This feature
   depends on having the channel open in mumble mode, having the foo
   switch set, and on the phase of the moon."

   True story: Once upon a time there was a bug that really did depend
   on the phase of the moon.  There is a little subroutine that had
   traditionally been used in various programs at MIT to calculate an
   approximation to the moon's true phase.  GLS incorporated this
   routine into a LISP program that, when it wrote out a file, would
   print a timestamp line almost 80 characters long.  Very
   occasionally the first line of the message would be too long and
   would overflow onto the next line, and when the file was later read
   back in the program would {barf}.  The length of the first line
   depended on both the precise date and time and the length of the
   phase specification when the timestamp was printed, and so the bug
   literally depended on the phase of the moon!

   The first paper edition of the Jargon File (Steele-1983) included
   an example of one of the timestamp lines that exhibited this bug,
   but the typesetter `corrected' it.  This has since been
   described as the phase-of-the-moon-bug bug.

:phase-wrapping: [MIT] n. Syn. {wrap around}, sense 2.

:phreaking: /freek'ing/ [from `phone phreak'] n. 1. The art and
   science of cracking the phone network (so as, for example, to make
   free long-distance calls).  2. By extension, security-cracking in
   any other context (especially, but not exclusively, on
   communications networks) (see {cracking}).

   At one time phreaking was a semi-respectable activity among
   hackers; there was a gentleman's agreement that phreaking as an
   intellectual game and a form of exploration was OK, but serious
   theft of services was taboo.  There was significant crossover
   between the hacker community and the hard-core phone phreaks who
   ran semi-underground networks of their own through such media as
   the legendary `TAP Newsletter'.  This ethos began to break
   down in the mid-1980s as wider dissemination of the techniques put
   them in the hands of less responsible phreaks.  Around the same
   time, changes in the phone network made old-style technical
   ingenuity less effective as a way of hacking it, so phreaking came
   to depend more on overtly criminal acts such as stealing phone-card
   numbers.  The crimes and punishments of gangs like the `414 group'
   turned that game very ugly.  A few old-time hackers still phreak
   casually just to keep their hand in, but most these days have
   hardly even heard of `blue boxes' or any of the other
   paraphernalia of the great phreaks of yore.

:pico-: [SI: a quantifier
   meaning * 10^-12]
   pref. Smaller than {nano-}; used in the same rather loose
   connotative way as {nano-} and {micro-}.  This usage is not yet
   common in the way {nano-} and {micro-} are, but should be
   instantly recognizable to any hacker.  See also {{quantifiers}},
   {micro-}.

:pig, run like a: v. To run very slowly on given hardware, said of
   software.  Distinct from {hog}.

:pilot error: [Sun: from aviation] n. A user's misconfiguration or
   misuse of a piece of software, producing apparently buglike results
   (compare {UBD}).  "Joe Luser reported a bug in sendmail that
   causes it to generate bogus headers."  "That's not a bug, that's
   pilot error.  His `sendmail.cf' is hosed."

: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.

:Pink-Shirt Book: `The Peter Norton Programmer's Guide to the IBM
   PC'.  The original cover featured a picture of Peter Norton with a
   silly smirk on his face, wearing a pink shirt.  Perhaps in
   recognition of this usage, the current edition has a different
   picture of Norton wearing a pink shirt.  See also {{book titles}}.

:PIP: /pip/ [Peripheral Interchange Program] vt.,obs. To copy;
   from the program PIP on CP/M, RSX-11, RSTS/E, TOPS-10, and OS/8
   (derived from a utility on the PDP-6) that was used for file
   copying (and in OS/8 and RT-11 for just about every other file
   operation you might want to do).  It is said that when the program
   was originated, during the development of the PDP-6 in 1963, it was
   called ATLATL (`Anything, Lord, to Anything, Lord'; this played on
   the Nahuatl word `atlatl' for a spear-thrower, with connotations
   of utility and primitivity that were no doubt quite intentional).

:pistol: [IBM] n. A tool that makes it all too easy for you to
   shoot yourself in the foot.  "UNIX `rm *' makes such a nice
   pistol!"

:pizza box: [Sun] n. The largish thin box housing the electronics
   in (especially Sun) desktop workstations, so named because of its
   size and shape and the dimpled pattern that looks like air holes.

   Two meg single-platter removable disk packs used to be called
   pizzas, and the huge drive they were stuck into was referred to as
   a pizza oven.  It's an index of progress that in the old days just
   the disk was pizza-sized, while now the entire computer is.

:pizza, ANSI standard: /an'see stan'd*rd peet'z*/ [CMU] Pepperoni
   and mushroom pizza.  Coined allegedly because most pizzas ordered
   by CMU hackers during some period leading up to mid-1990 were of
   that flavor.  See also {rotary debugger}; compare {tea, ISO
   standard cup of}.

:plaid screen: [XEROX PARC] n. A `special effect' that occurs
   when certain kinds of {memory smash}es overwrite the control
   blocks or image memory of a bit-mapped display.  The term "salt and
   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}.

:plain-ASCII: /playn-as'kee/ Syn. {flat-ASCII}.

:plan file: [UNIX] n. On systems that support {finger}, the
   `.plan' file in a user's home directory is displayed when the user
   is fingered.  This feature was originally intended to be used to
   keep potential fingerers apprised of one's location and near-future
   plans, but has been turned almost universally to humorous and
   self-expressive purposes (like a {sig block}).  See {Hacking X
   for Y}.

   A recent innovation in plan files has been the introduction of
   "scrolling plan files" which are one-dimensional animations made
   using only the printable ASCII character set, carriage return and
   line feed, avoiding terminal specific escape sequences, since the
   {finger} command will (for security) not pass the escape
   character.

   Scrolling .plan files have become art forms in miniature, and some
   sites have started competitions to find who can create the longest
   running, funniest, and most original animations.  Various animation
   characters include:

     Centipede:
          mmmmme
     Lorry/Truck:
          oo-oP
     Andalusian Video Snail:
          _@/

   and a compiler (ASP) is available on USENET for producing them.

:platinum-iridium: adj. Standard, against which all others of the
   same category are measured.  Usage: silly.  The notion is that one
   of whatever it is has actually been cast in platinum-iridium alloy
   and placed in the vault beside the Standard Kilogram at the
   International Bureau of Weights and Measures near Paris.  (From
   1889 to 1960, the meter was defined to be the distance between two
   scratches in a platinum-iridium bar kept in that vault --- this
   replaced an earlier definition as 10^(-7) times the distance
   between the North Pole and the Equator along a meridian through
   Paris; unfortunately, this had been based on an inexact value of
   the circumference of the Earth.  From 1960 to 1984 it was defined
   to be 1650763.73 wavelengths of the orange-red line of krypton-86
   propagating in a vacuum.  It is now defined as the length of the
   path traveled by light in a vacuum in the time interval of
   1/299,792,458 of a second.  The kilogram is now the only unit of
   measure officially defined in terms of a unique artifact.)  "This
   garbage-collection algorithm has been tested against the
   platinum-iridium cons cell in Paris."  Compare {golden}.

:playpen: [IBM] n. A room where programmers work.  Compare {salt
   mines}.

:playte: /playt/ 16 bits, by analogy with {nybble} and
   {{byte}}.  Usage: rare and extremely silly.  See also {dynner}
   and {crumb}.

:plingnet: /pling'net/ n. Syn. {UUCPNET}.  Also see
   {{Commonwealth Hackish}}, which uses `pling' for {bang} (as in
   {bang path}).

:plokta: /plok't*/ [Acronym for `Press Lots Of Keys To Abort']
   v. To press random keys in an attempt to get some response from
   the system.  One might plokta when the abort procedure for a
   program is not known, or when trying to figure out if the system is
   just sluggish or really hung.  Plokta can also be used while trying
   to figure out any unknown key sequence for a particular operation.
   Someone going into `plokta mode' usually places both hands flat
   on the keyboard and presses down, hoping for some useful
   response.

   A slightly more directed form of plokta can often be seen in mail
   messages or USENET articles from new users --- the text might end
   with

             q  
             quit       
             :q 
             ^C 
             end        
             x  
             exit       
             ZZ 
             ^D 
             ?  
             help

   as the user vainly tries to find the right exit sequence, with the
   incorrect tries piling up at the end of the message....
