home *** CD-ROM | disk | FTP | other *** search
/ Phoenix Rising BBS / phoenixrising.zip / phoenixrising / vir-docs / jargon.arj / JARGON1 next >
Text File  |  1990-06-14  |  66KB  |  1,285 lines

  1. ========= THIS IS THE JARGON FILE, VERSION 2.1.1 (DRAFT) 12 JUN 1990  =========
  2.   
  3. INTRODUCTION
  4.    This `jargon file' is a collection of slang terms used by various
  5. subcultures of computer hackers. 
  6.  
  7.    The original `jargon file' was a collection of hacker slang from
  8. technical cultures including 1) the MIT AI Lab, 2) the Stanford
  9. AI lab, 3) the old ARPANET AI/LISP/PDP-10 communities, 3) Carnegie-
  10. Mellon University, 4) Worcester Polytechnic Institute. Some entries
  11. dated back to the early 1970s. This version was published as _The_
  12. Hacker's_Dictionary_ in 1983.
  13.  
  14.    This new version casts a wider net than the old jargon file;
  15. its aim is to cover not just AI but all the technical computing
  16. cultures wherein the true hacker-nature is manifested. More than
  17. half of the entries now derive from USENET and the C and UNIX
  18. communities.
  19.  
  20.     The present maintainers of the jargon file are Guy L. Steele
  21. (gls@think.com) and Eric S. Raymond (eric@snark.uu.net). Send
  22. all additions, corrections and correspondence relating to the
  23. jargon file to jargon@think.com.
  24.  
  25.  
  26. CREDITS
  27.    The original jargon file was compiled by Guy L. Steele Jr., Raphael
  28. Finkel, Don Woods, and Mark Crispin, with assistance from the MIT and
  29. Stanford AI communities and Worcester Polytechnic Institute.
  30. Some contributions were submitted via the ARPAnet from miscellaneous
  31. sites. The `old' jargon file was last revised in 1983; its revisions
  32. are all un-numbered and may be collectively considered `Version 1'.
  33.  
  34.    Version 2.1: the jargon file reorganization and massive additions
  35. were by Eric S. Raymond, approved by Guy Steele. Many items of UNIX,
  36. C, USENET and microcomputer-based slang were added at that time (as
  37. well as Appendix A, The Untimely Demise of Mabel The Monkey). Some
  38. obsolescent usages (mostly PDP-10 derived) were moved to appendix B.
  39.  
  40.    Our thanks to all the USENETters who contributed entries and
  41. encouragement. Special thanks to our Scandinavian correspondent Per
  42. Lindberg (per@front.se), author of the remarkable Swedish language
  43. 'zine _Hackerbladet_, for bring FOO! comics to our attention and
  44. smuggling the IBM hacker underground's own baby jargon file out to
  45. us. Also special gratitude to ace hacker/linguist Joe Keane
  46. (jkg@osc.osc.com) for helping us improve the pronunciation guides.
  47.  
  48. FORMAT FOR NEW ENTRIES
  49.    Try to conform to the format already being used -- 70 character
  50. lines, 3-character indentations, pronunciations in parentheses,
  51. etymologies in brackets, single-space after def'n numbers and word
  52. classes, etc. Stick to the standard ASCII character set.
  53.  
  54.    We are looking to expand the file's range of technical specialties
  55. covered. There are doubtless rich veins of jargon yet untapped in the
  56. scientific computing, graphics, and networking hacker communities;
  57. also in numerical analysis, computer architectures and VLSI design,
  58. language design, and many other related fields. Send us your slang!
  59.  
  60.    We are *not* interested in straight technical terms explained by
  61. textbooks or technical dictionaries unless an entry illuminates
  62. "underground" meanings or aspects not covered by official histories.
  63. We are also not interested in "joke" entries -- there is a lot of
  64. humor in the file but it must flow naturally out of the explanations
  65. of what hackers do and how they think.
  66.  
  67.    It is OK to submit items of slang you have originated if they
  68. have spread to the point of being used by people who are not
  69. personally acquainted with you. We prefer items to be attested by
  70. independent submission from two different sites.
  71.  
  72.    The slang file will be regularly maintained and re-posted from
  73. now on and will include a version number. Read it, pass it around,
  74. contribute -- this is *your* monument!
  75.   
  76.  
  77.  
  78. NOTES ON JARGON CONSTRUCTION
  79.    There are some standard methods of jargonification which became
  80. established quite early (i.e before 1970), spreading from such sources
  81. as the MIT Model Railroad Club, the PDP-1 SPACEWAR hackers and John
  82. McCarthy's original crew of LISPers. These include:
  83.  
  84. Verb doubling: a standard construction is to double a verb and use it
  85.    as a comment on what the implied subject does.  Often used to
  86.    terminate a conversation.  Typical examples involve WIN, LOSE,
  87.    HACK, FLAME, BARF, CHOMP:
  88.     "The disk heads just crashed."  "Lose, lose."
  89.     "Mostly he just talked about his @#!!$% crock.  Flame, flame."
  90.     "Boy, what a bagbiter!  Chomp, chomp!"
  91.  
  92. Soundalike slang: similar to Cockney rhyming slang.  Often made up on
  93.    the spur of the moment.  Standard examples:
  94.     Boston Globe => Boston Glob
  95.     Herald American => Horrid (Harried) American
  96.     New York Times => New York Slime
  97.     Prime Time => Slime Time
  98.     government property - do not duplicate (seen on keys)
  99.         => government duplicity - do not propagate
  100.    Often the substitution will be made in such a way as to slip in
  101.    a standard jargon word:
  102.     Dr. Dobb's Journal => Dr. Frob's Journal
  103.     Margaret Jacks Hall => Marginal Hacks Hall
  104.     Data General => Dirty Genitals
  105.  
  106. The -P convention: turning a word into a question by appending the
  107.    syllable "P"; from the LISP convention of appending the letter "P"
  108.    to denote a predicate (a Boolean-valued function).  The question
  109.    should expect a yes/no answer, though it needn't.  (See T and NIL.)
  110.      At dinnertime: "Foodp?"  "Yeah, I'm pretty hungry." or "T!"
  111.      "State-of-the-world-P?"  (Straight) "I'm about to go home."
  112.                   (Humorous) "Yes, the world has a state."
  113.    [One of the best of these is a Gosperism (i.e., due to Bill
  114.    Gosper).  When we were at a Chinese restaurant, he wanted to know
  115.    whether someone would like to share with him a two-person-sized
  116.    bowl of soup.  His inquiry was: "Split-p soup?" --GLS]
  117.  
  118. Peculiar nouns: MIT AI hackers love to take various words and add the
  119.    wrong endings to them to make nouns and verbs, often by extending a
  120.    standard rule to nonuniform cases.  Examples:
  121.         porous => porosity
  122.         generous => generosity
  123.     Ergo:    mysterious => mysteriosity
  124.         ferrous => ferrocity
  125.  
  126.     Other examples: winnitude, disgustitude, hackification. 
  127.    
  128.    Also, note that all nouns can be verbed.  eg: "All nouns can be
  129.    verbed", "I'll mouse it up", "Hang on while I clipboard it over",
  130.    "I'm grepping the files". English as a whole is already heading in
  131.    this direction (towards pure-positional grammar like Chinese);
  132.    hackers are simply a bit ahead of the curve.
  133.  
  134. Spoken inarticulations: Words such as "mumble", "sigh", and "groan"
  135.    are spoken in places where their referent might more naturally be
  136.    used.  It has been suggested that this usage derives from the
  137.    impossibility of representing such noises in a com link.  Another
  138.    expression sometimes heard is "complain!", meaning "I have a
  139.    complaint!"
  140.  
  141. Hacker speech style: Features extremely precise diction, careful
  142.    word choice, a relatively large working vocabulary, and relatively
  143.    little use of contractions or "street slang". Dry humor, irony,
  144.    puns, and a mildly flippant attitude are highly valued -- but an
  145.    underlying seriousness and intelligence is essential. One should
  146.    use just enough jargon to communicate precisely and identify
  147.    oneself as "in the culture"; overuse and a breathless, excessively
  148.    gung-ho attitude are considered tacky and the mark of a loser.
  149.  
  150. Hacker speech style (a variety of the precisionist English normally
  151. spoken by scientists, design engineers, and academics in technical
  152. fields) is fairly constant everywhere. Of the four other listed
  153. constructions, verb doubling and peculiar noun formations have become
  154. quite general; but rhyming slang is still largely confined to MIT and
  155. other large universities, and the P convention is found only where
  156. LISPers flourish.
  157.  
  158.    One final note. Many words in hacker jargon have to be understood as
  159. members of sets of comparatives. This is especially true of the adjectives
  160. and nouns used to describe the beauty and functional quality of code. Here
  161. is an approximately correct spectrum:
  162.  
  163.     MONSTROSITY BRAIN-DAMAGE  BUG  SCREW  LOSE  MISFEATURE
  164.     CROCK  KLUGE  HACK  WIN  FEATURE  ELEGANCE PERFECTION
  165.  
  166. The last is never actually attained.
  167.  
  168. PRONUNCIATION GUIDE
  169.  
  170.    The pronunciation keys in the jargon listing use the following
  171.    simple system:
  172.  
  173.    1) Syllables are hyphen-separated, except that an apostrophe
  174.       or back-apostrophe follows each accented syllable (the
  175.       back apostrophe marks a secondary accent in some words of
  176.       four or more syllables).
  177.  
  178.    2) Consonants are pronounced as in American English. The letter
  179.       "g" is always hard (as in "got" rather than "giant"); "ch"
  180.       is soft ("church" rather than "chemist"). The letter "j" is
  181.       the sound that occurs twice in "judge". The letter "s" is
  182.       always as in "pass", never a z sound (but it is sometimes
  183.       doubled at the end of syllables to emphasize this). The
  184.       digraph `dh' is the th of `these clothes', not of `thick'.
  185.  
  186.     3) Vowels are represented as follows:
  187.  
  188.     a    back, that
  189.     ah    father, palm
  190.     ar    far, mark
  191.     aw    flaw, caught
  192.     ay    bake, rain
  193.     e    less, men
  194.     ee    easy, ski
  195.     eir    their, software
  196.     i    trip, hit
  197.     ie    life, sky
  198.     o    cot, top
  199.     oh    flow, sew
  200.     oo    loot, through
  201.     or    more, door
  202.     ow    out, how
  203.     oy    boy, coin
  204.     uh    but, some
  205.     u    put, foot
  206.     y    yet
  207.     yoo    few
  208.     [y]oo    oo with optional `fronting' as in `news' (noos or nyoos).
  209.  
  210. An at-sign is used for the "schwa" sound of unstressed or occluded vowels (the
  211. one that is often written with an upside-down "e"). The schwa vowel is
  212. omitted in syllables containing vocalic r, l, m or n; that is, "kitten" and
  213. "color" would be rendered "kit'n" and "kul'r".
  214.  
  215. THE JARGON ITSELF
  216.  
  217.                =  =
  218.  
  219. @BEGIN [primarily CMU] with @End, used humorously in writing to
  220.    indicate a context or to remark on the surrounded text.  From
  221.    the SCRIBE command of the same name.  For example:
  222.     @Begin(Flame)
  223.     Predicate logic is the only good programming language.
  224.     Anyone who would use anything else is an idiot.  Also,
  225.     computers should be tredecimal instead of binary.
  226.     @End(Flame)
  227.    On USENET, this construct would more frequently be rendered as
  228.    <FLAME ON> and <FLAME OFF>.
  229.  
  230.             = A =
  231.  
  232. ABEND (ab'end) n. Abnormal termination (of software); crash; lossage.
  233.    Derives from an error message on the IBM 360, but has passed into
  234.    more general use.
  235.  
  236. ACK (ak) interj. 1. [from the ASCII mnemonic for 000110] Acknowledge.
  237.    Used to register one's presence (compare mainstream "Yo!"). An
  238.    appropriate response to PING. 2. [prob. from _Bloom_County_] An
  239.    exclamation of surprised disgust, esp. in "Oop ack!".
  240.    Semi-humorous.
  241.  
  242. ADGER (adj'r) [UCLA] v. To make a bonehead move that could have been
  243.    forseen with a slight amount of mental effort, i.e., "He started
  244.    removing files and promptly adgered the whole project".
  245.  
  246. AD-HOCKERY (ad-hok'@r-ee) [Purdue] n. Gratuitous assumptions made
  247.    inside certain programs, esp. expert systems, which lead to the
  248.    appearance of semi-intelligent behavior, but are in fact entirely
  249.    arbitrary.
  250.  
  251. ADVENT (ad'vent) n. The prototypical computer adventure game, first
  252.    implemented on the PDP-10 by MIT hackers Dave Lebling, Mark Blank
  253.    and Don R. Woods as a demo for a natural-language parser they were
  254.    hacking on at the time.  Now better known as Adventure, but the
  255.    TOPS-10 operating system only permitted 6-letter filenames. "A huge
  256.    green fierce snake bars the way!"
  257.  
  258. ALIASING SCREW (ayl'ee-@-sing) [C programmers] n. A class of subtle
  259.    programming errors which can arise in code that does dynamic
  260.    allocation via malloc(3).  If more than one pointer addresses
  261.    (`aliases for') a given hunk of storage, it may happen that the
  262.    storage is freed through one alias and then referenced through
  263.    another, leading to subtle (and possibly intermittent) lossage
  264.    depending on the state and the allocation history of the malloc
  265.    ARENA. Avoidable by use of allocation strategies that never alias
  266.    allocated core. See also PRECEDENCE SCREW, SMASH THE STACK,
  267.    FANDANGO ON CORE, MEMORY LEAK, OVERRUN SCREW.
  268.  
  269. ALT BIT (ahlt bit) [from alternate?] adj. See META BIT.
  270.  
  271. ANGLE BRACKETS (ang'@l brak'@ts) [primarily MIT] n. Either of the
  272.    characters "<" and ">".  See BROKET.
  273.  
  274. APP (ap) n. Short for `application program', as opposed to a systems
  275.    program. What systems vendors are forever chasing developers to do
  276.    for their environments so they can sell more boxes. Hackers tend
  277.    not to think of the things they themselves run as apps; thus, in
  278.    hacker parlance the term excludes compilers, program editors,
  279.    games, and messaging systems, though a user would consider all
  280.    those apps. Oppose TOOL, OPERATING SYSTEM.
  281.  
  282. ARENA (a-ree'nuh) [UNIX] n. The area of memory attached to a process by
  283.    brk(2) and sbrk(2) and used by malloc(3) as dynamic storage. So
  284.    named from a semi-mythical "malloc: corrupt arena" message
  285.    supposedly emitted when some early versions became terminally
  286.    confused. See OVERRUN SCREW, ALIASING SCREW, MEMORY LEAK, SMASH THE
  287.    STACK.
  288.  
  289. ARG (arg) n. Abbreviation for "argument" (to a function), used so
  290.    often as to have become a new word. Compare PARAM, VAR.
  291.  
  292. ASBESTOS LONGJOHNS (as-bes't@s long'jons), UNDIES (uhn'dees), or
  293.    OVERCOAT (o'vr-koht) n. Metaphoric garments often donned by USENET
  294.    posters just before emitting a remark they expect will elicit
  295.    FLAMAGE.
  296.  
  297. ASCII (as'kee) Common slang names for ASCII characters are collected
  298.    here. See individual entries for BANG, CLOSE, EXCL, OPEN, QUES,
  299.    SEMI, SHRIEK, SPLAT, TWIDDLE, WHAT, WOW, and YIU-SHANG WHOLE FISH.
  300.    This list is snarfed from USENET circa 1983. Single characters are
  301.    listed in ASCII order, followed by multiples. For each character,
  302.    "official" names appear first, then others in order of popularity
  303.    (more or less).
  304.  
  305.     !   exclamation point, exclamation, bang, factorial, excl, ball-bat,
  306.         smash, shriek, cuss, wow, hey
  307.     "   double quote, quote, dirk, literal mark, rabbit ears
  308.     #   pound sign, number sign, sharp, crunch, mesh, hex, hash,
  309.         flash, grid, pig-pen, tictactoe, scratchmark, octothorp (from
  310.         Bell System)
  311.     $   dollar sign, currency symbol, buck, cash, string (from BASIC),
  312.         escape (from TOPS-10), ding, big-money
  313.     %   percent sign, percent, mod, double-oh-seven
  314.     &   ampersand, amper, and, address (from C), andpersand
  315.     '   apostrophe, single quote, quote, prime, tick, irk, pop, spark
  316.     ()  open/close parenthesis, left/right parenthesis, paren/thesis,
  317.         parenthisey, unparenthisey, open/close round bracket, ears,
  318.         so/already, wax/wane
  319.     *   asterisk, star, splat, wildcard, gear, dingle, mult ("multiply")
  320.     +   plus sign, plus, add, cross, intersection
  321.     ,   comma, tail
  322.     -   hyphen, dash, minus sign, worm
  323.     .   period, dot, decimal point, radix point, point, full stop, spot
  324.     /   virgule, slash, stroke, slant, diagonal, solidus, over, slat
  325.     :   colon, two-spot
  326.     ;   semicolon, semi, hybrid
  327.     <>  angle brackets, brokets, left/right angle, less/greater than,
  328.         read from/write to, from/into, from/toward, in/out, comesfrom/
  329.         gozinta (all from UNIX), funnel, brokets, crunch/zap, suck/blow
  330.     =   equal sign, equals, quadrathorp, gets, half-mesh
  331.     ?   question mark, whatmark, what, wildchar, ques, huh, quark
  332.     @   at sign, at, each, vortex, whorl, whirlpool, cyclone, snail,
  333.         ape, cat
  334.     V   vee, book
  335.     []  square brackets, left/right bracket, bracket/unbracket, bra/ket,
  336.         square/unsquare, U turns
  337.     \   reversed virgule, backslash, bash, backslant, backwhack, backslat,
  338.         escape (from UNIX)
  339.     ^   circumflex, caret, uparrow, hat, chevron, sharkfin, to ("to
  340.         the power of"), fang
  341.     _   underscore, underline, underbar, under, score, backarrow, flatworm
  342.     `   grave accent, grave, backquote, left quote, open quote, backprime,
  343.         unapostrophe, backspark, birk, blugle, back tick, push
  344.     {}  open/close brace, left/right brace, brace/unbrace, curly bracket,
  345.         curly/uncurly, leftit/rytit, embrace/bracelet
  346.     |   vertical bar, bar, or, v-bar, spike, pipe, gozinta, thru,
  347.         pipesinta (last four from UNIX)
  348.     ~   tilde, squiggle, approx, wiggle, twiddle, swung dash, enyay
  349.  
  350. ASSEMBLER (as'em-bler) 1. A program translator that allows human
  351.    beings to generate machine code using mnemonics and symbolic names
  352.    for memory locations rather than raw binary; distinguished from an
  353.    HLL (q.v.) by the fact that a single assembler step generally maps
  354.    to a single machine instruction (see also LANGUAGES OF CHOICE). 2.A
  355.    NANOBOT which is a physical REPLICATOR.  (This is the "official"
  356.    term, coined by Eric Drexler; see NANOTECHNOLOGY).
  357.  
  358. AUTOMAGICALLY (aw-toh-maj'i-klee, aw-toh-maj'i-kl-ee) adv.
  359.    Automatically, but in a way which, for some reason (typically
  360.    because it is too complicated, or too ugly, or perhaps even too
  361.    trivial), I don't feel like explaining to you.  See MAGIC.
  362.    Example: Some programs which produce XGP output files spool them
  363.    automagically.
  364.  
  365.             = B =
  366.  
  367. BACKBONE CABAL (bak'bohn k@-bawl') n. Semi-mythical group of
  368.    large-site administrators who pushed through the GREAT RENAMING and
  369.    reined in the chaos of USENET during most of the 1980s. The cabal
  370.    mailing list disbanded in late 1988 after a bitter internal
  371.    catfight, but the net hardly noticed.
  372.  
  373. BACK DOOR (bak dor) n. A hole in the security of a system deliberately
  374.    left in place by designers or maintainers. The motivation for this
  375.    is not always sinister; some operating systems, for example, come
  376.    out of the box with privileged accounts intended for use by field
  377.    service or the vendor's maintenance programmers. Historically, back
  378.    doors have often lurked in systems longer than any one expected or
  379.    planned, and a few have become widely known. The famous RTM worm of
  380.    late 1988, for example, used a back door in the BSD UNIX
  381.    sendmail(1) utility. See also IRON BOX, CRACKER, WORM, LOGIC BOMB.
  382.  
  383. BACKGROUND (bak'grownd) v.,adj. A task running in background is
  384.    detached from the terminal where it was started and running at a
  385.    lower priority (oppose FOREGROUND). Nowadays this term is primarily
  386.    associated with UNIX, but it was appears first to have been used in
  387.    this sense on OS/360. By extension, to do a task "in background" is
  388.    to do it whenever FOREGROUND matters are not claiming your
  389.    undivided attention, and "to background" something means to
  390.    relegate it to a lower priority. Compare SLOPSUCKER.
  391.  
  392. BAD THING (bad thing) n. Something which can't possibly result in
  393.    improvement of the subject.  This term is always capitalized, as in
  394.    "Replacing all of the 9600 baud modems with bicycle couriers would
  395.    be a Bad Thing." Oppose GOOD THING.
  396.  
  397. BAGBITER (bag'biet-@r) 1. n. Equipment or program that fails, usually
  398.    intermittently.  2. BAGBITING: adj. Failing hardware or software.
  399.    "This bagbiting system won't let me get out of SPACEWAR."  Usage:
  400.    verges on obscenity.  Grammatically separable; one may speak of
  401.    "biting the bag".  Synonyms: LOSER, LOSING, CRETINOUS, BLETCHEROUS,
  402.    BARFUCIOUS.
  403.  
  404. BAMF (bamf) [from comix] interj. Notional sound made by a person or
  405.    object teleporting in or out of the hearer's vicinity. Often used
  406.    in VIRTUAL REALITY (q.v.) electronic fora when a character wishes
  407.    to make a dramatic entrance or exit.
  408.  
  409. BANG (bang) 1. n. Common alternate name for EXCL (q.v.), especially at
  410.    CMU and when used in pronouncing a BANG PATH (q.v.) in spoken
  411.    hackish.  See SHRIEK. 2. interj. An exclamation signifying roughly
  412.    "I have achieved enlightenment!" or "The dynamite has cleared out
  413.    my brain!". Often used to acknowledge that one has perpetrated a
  414.    THINKO immediately after one has been called on it.
  415.  
  416. BANG PATH (bang path) n. An old-style UUCP electronic-mail address
  417.    specifying hops to get from some assumed-reachable location to the
  418.    addressee, so called because each hop is signified by a BANG sign.
  419.    Thus the path "...!bigsite!foovax!barbox!me" directs correspondents
  420.    to route their mail to machine bigsite (presumably a well-known
  421.    location accessible to everybody) and from there through the
  422.    machine "foovax" to the account of user "me" on "barbox". See
  423.    INTERNET ADDRESS and NETWORK.
  424.  
  425. BAR (bar) 1. The second metasyntactic variable, after FOO and before
  426.    BAZ.  "Suppose we have two functions FOO and BAR.  FOO calls
  427.    BAR..."  2.  Often appended to FOO to produce FOOBAR.
  428.  
  429. BARF (barf) [from the "layman" slang, meaning "vomit"] 1. interj. Term
  430.    of disgust.  See BLETCH.  2. v. Choke, as on input.  May mean to
  431.    give an error message.  "The function `=' compares two fixnums or
  432.    two flonums, and barfs on anything else."  3. BARFULOUS,
  433.    BARFUCIOUS: adj. Said of something which would make anyone barf, if
  434.    only for aesthetic reasons. See CHOKE, GAG.
  435.  
  436. BAUD BARF (bawd barf) n. The garbage one gets on the monitor when
  437.    using a modem connection with some protocol setting (esp. line
  438.    speed) incorrect, or when someone picks up a voice extension on the
  439.    same line, or when really bad line noise disrupts the connection.
  440.  
  441. BAZ (baz) 1. The third metasyntactic variable, after FOO and BAR and
  442.    before QUX.  "Suppose we have three functions FOO, BAR, and BAZ.
  443.    FOO calls BAR, which calls BAZ..." 2. Occasionally appended to FOO
  444.    to produce FOOBAZ.
  445.  
  446. BELLS AND WHISTLES (belz and hwis'@lz) [by analogy with locomotives]
  447.    n. Features added to a program or system to make it more FLAVORFUL
  448.    from a hacker's point of view, without necessarily adding to its
  449.    utility for its primary function. Distinguished from CHROME which
  450.    is intended to attract users.
  451.  
  452. BENCHMARK (bench'mark) n. An inaccurate measure of computer
  453.    performance.  As in "In the computer industry, there are three
  454.    kinds of lies: lies, damn lies, and benchmarks."
  455.  
  456. BERKLIX (ber'kliks) n.,adj. Contraction of Berkeley UNIX. See BSD. Not
  457.    used at Berkeley itself. [This one, in my experience, is more
  458.    common among suit-wearers attempting to sound "hip" than hackers --
  459.    ESR]
  460.  
  461. BERZERKELY (b@r-zer'klee) [from the name of a now-deceased record
  462.    label] n. Humorous, often-used distortion of "Berkeley" used esp.
  463.    to refer to the practices or products of the BSD UNIX hackers.
  464.  
  465. BIG-ENDIAN (big'-en-di-@n) adj. Describes a computer architecture in
  466.    which, within a given 16- or 32-bit word, lower byte addresses have
  467.    higher significance (the word is stored `big-end-first'). Most
  468.    processors including the IBM 370 family and the PDP-10 and the
  469.    Intel and Motorola microprocessor families and the various RISC
  470.    designs current in 1990 are big-endian. See LITTLE-ENDIAN.
  471.  
  472. BIG IRON (big ie'@rn) n. Large, expensive, ultra-fast computers.  Used
  473.    generally of number crunching supercomputers such as Crays, but can
  474.    include more conventional big commercial IBMish mainframes.
  475.    Believed to have originated in the title of a paper given at a
  476.    Usenix, "Unix on Big Iron". Term of approval, compare DINOSAUR.
  477.  
  478. BIG RED SWITCH (big red swich) [IBM] n. The power switch on a
  479.    computer, esp. on an IBM-PC where it really is large and red. As in
  480.    "This !@%$% BITTY BOX is hung again, time to hit the big red
  481.    switch".
  482.  
  483. BIGNUMS (big'nuhms) [from Macsyma] n. 1. In backgammon, large numbers
  484.    on the dice.  2. Multiple-precision (sometimes infinitely
  485.    extendable) integers and, through analogy, any very large numbers.
  486.    3. EL CAMINO BIGNUM: El Camino Real, a street through the San
  487.    Francisco peninsula that originally extended (and still appears in
  488.    places) all the way to Mexico City.  It was termed "El Camino
  489.    Double Precision" when someone noted it was a very long street, and
  490.    then "El Camino Bignum" when it was pointed out that it was
  491.    hundreds of miles long.
  492.  
  493. BINARY (bie'na-ree) n. The object code for a program.
  494.  
  495. BIT BANG (bit bang) n. Transmission of data on a serial line
  496.    accomplished by rapidly tweaking a single output bit at the
  497.    appropriate times (popular on certain early models of PRIME
  498.    computers, presumably when UARTs were too expensive; and on archaic
  499.    Z-80 micros with a Zilog PIO but no SIO). The technique is a simple
  500.    loop with eight OUT, SHIFT, OUT etc for each byte.  Input is more
  501.    interesting. And full duplex (doing input and output at the same
  502.    time) is one way to separate the real hackers from the wannabees.
  503.  
  504. BIT BUCKET (bit buhk'@t) n. The great data sink in the sky. Data that
  505.    is discarded is said to "go to the bit bucket". On UNIX, often used
  506.    for /dev/null. Sometimes amplified as THE GREAT BIT BUCKET IN THE
  507.    SKY.
  508.  
  509. BIT DECAY (bit d@-kay') n. See SOFTWARE ROT. People with a physics
  510.    background tend to prefer this one for the analogy with particle
  511.    decay.
  512.  
  513. BIT ROT (bit rot) n. See SOFTWARE ROT.
  514.  
  515. BITBLT (bit'blit, bit'belt) n. [from BLT, q.v.] 1. One of a closely
  516.    related family of algorithms for moving and copying rectangles of
  517.    bits between main and display memory on a bit-mapped device, or
  518.    between two areas of either main or display memory (the requirement
  519.    to do the right thing in the case of overlapping source and
  520.    destination rectangles is what makes BitBlt tricky). 2. An early
  521.    experimental bit-mapped terminal at Bell Labs, later commercialized
  522.    as the AT&T 5620.
  523.  
  524. BITTY BOX (bit'ee boks) n. 1. A computer sufficiently small, primitive
  525.    or incapable as to cause a hacker acute claustrophobia at the
  526.    thought of developing for it. Especially used of small,
  527.    obsolescent, single-tasking-only personal machines like the Atari
  528.    800X, Osborne, Sinclair, VIC-20, or TRS-80. 2. More generally, the
  529.    opposite of `real computer' (see GET A REAL COMPUTER). Pejorative.
  530.    See also MESS-DOS, TOASTER, and TOY.
  531.  
  532. BIXIE (biks'ee) n. Synonym for EMOTICON used on BIX (the Byte
  533.    Information Exchange); BIXers believe the emoticon was invented
  534.    there.
  535.  
  536. BLAST (blast) v.,n. Synonym for BLT (q.v.), used esp. for large data
  537.    sends over a network or comm line. Opposite of SNARF. Usage:
  538.    uncommon.
  539.  
  540. BLAZER (blay'zr) n. Nickname for the Telebit Trailblazer, an expensive
  541.    but extremely reliable and effective high-speed modem, popular at
  542.    UNIX sites that pass large volumes of EMAIL and USENET news.
  543.  
  544. BLETCH (blech) [from German "brechen", to vomit (?)] 1. interj. Term
  545.    of disgust.  2. BLETCHEROUS: adj. Disgusting in design or function.
  546.    "This keyboard is bletcherous!"  Usage: slightly comic.
  547.  
  548. BLINKENLIGHTS (blink'@n-lietz) n. Front-panel diagnostic lights on a
  549.    mainframe CPU.  Derives from the last word of the famous
  550.    blackletter-Gothic "ACHTUNG! ALLES LOOKENSPEEPERS!" notice in
  551.    mangled pseudo-German that once graced about half the computer
  552.    rooms in the English-speaking world. The following text ran: "Das
  553.    computermachine ist nicht fur gefingerpoken und mittengrabben.  Ist
  554.    easy schnappen der springenwerk, blowenfusen und poppencorken mit
  555.    spitzensparken. Ist nicht fur gewerken bei das dumpkopfen. Das
  556.    rubbernecken sichtseeren keepen hans in das pockets muss; relaxen
  557.    und watch das blinkenlichten." This silliness dates back at least
  558.    as far as the London University ATLAS site in the 1960s, but
  559.    (judging by the idioms) was probably composed by an American at
  560.    some still-earlier date.
  561.  
  562. BLOCK (blok) [From computer science usage] 1. vi. To delay while
  563.    waiting for something.  "We're blocking until everyone gets here."
  564.    2. in BLOCK ON vt. To block, waiting for (something).  "Lunch is
  565.    blocked on Phil's arrival."   
  566.  
  567. BLOCK TRANSFER COMPUTATIONS (blok trans'fer kom-pyoo-tay'shns) n.
  568.    From the Dr. Who television series: in the show, it referred to
  569.    computations so fiendishly subtle and complex that they could not
  570.    be performed by machines.  Used to refer to any task that should be
  571.    expressible as an algorithm in theory, but isn't.
  572.  
  573. BLOW AWAY (bloh @-way') v. To remove files and directories from
  574.    permanant storage with extreme prejudice, generally by accident.
  575.    Oppose NUKE.
  576.  
  577. BLOW OUT (bloh owt) v. Of software, to fail spectacularly; almost as
  578.    serious as CRASH AND BURN. See BLOW PAST.
  579.  
  580. BLOW PAST (bloh past) v. To BLOW OUT despite a safeguard.  "The server
  581.    blew past the 5K reserve buffer."
  582.  
  583. BLT (blit, belt [very rarely]) v. To transfer a large contiguous package
  584.    of information from one place to another.  This usage has outlasted
  585.    the PDP-10 BLock Transfer instruction for which it derives.  See
  586.    DD, CAT, BLAST, SNARF, Appendix B.
  587.  
  588. BLUE GLUE (bloo gloo) [IBM] n. IBM's SNA (Systems Network
  589.    Architecture) an incredibly losing and bletcherous protocol suite
  590.    widely favored at commercial shops that don't know any better.
  591.    See FEAR AND LOATHING.
  592.  
  593. BLUE GOO (bloo goo) n. Term for "police" NANOBOTS intended to prevent
  594.    GRAY GOO (q.v.), denature hazardous waste, destroy pollution, put
  595.    ozone back into the stratosphere, prevent halitosis, and to promote
  596.    truth, justice, and the American way, etc., etc. See
  597.    NANOTECHNOLOGY.
  598.  
  599. BNF (bee-en-ef) n. Hacker acronym for `Backus-Naur Form', a
  600.    metasyntactic notation used to specify the syntax of programming
  601.    languages, command sets and the like. Widely used for language
  602.    descriptions but seldom documented anywhere, so that it must
  603.    usually be learned by osmosis from other hackers. Consider this BNF
  604.    for a postal address:
  605.  
  606.    <postal-address> ::= <name-part> <street-address> <zip-part>
  607.  
  608.    <name-part> ::= <first-name> [<middle-part>] <last-name>
  609.  
  610.    <middle-part> ::= <middle-name>
  611.                   |  <middle-initial> "."
  612.  
  613.    <street-address> ::= [<apt>] <street-number> <street-name>
  614.  
  615.    <zip-part> ::= <town-name> "," <state-code> <zip-code>
  616.  
  617.    This translates into English as: A postal-address consists of
  618.    a name-part, followed by a street-address part, followed by a
  619.    zip-code part. A name-part consists of a first-name followed
  620.    by an optional middle-part followed by a last-name. A middle-part
  621.    consists of either a middle name or a middle initial followed
  622.    by a dot. A street address consists of an optional apartment
  623.    specifier followed by a street number, followed by a street name.
  624.    A zip-part consts of a town-name, followed by a state code,
  625.    followed by a zip code. Note that many things such as the format
  626.    of a first-name, apartment specifier or zip-code are left
  627.    unspecified. These are presumed to be obvious from context or
  628.    detailed in another part of the specification the BNF is part of.
  629.  
  630. BOA (bo'uh) [IBM] n. Any one of the fat cables that lurk under the
  631.    floor in DINOSAUR PENS. It is rumored within IBM that 370 channel
  632.    cables are limited to 200 feet because beyond that length the
  633.    boas get dangerous...
  634.  
  635. BOAT ANCHOR (boht an'kr) n. Like DOORSTOP (q.v.) but more severe,
  636.    implies that the offending hardware is irreversibly dead or
  637.    useless.
  638.  
  639. BOGOMETER (boh-goh'm@-tr) n. An instrument to measure BOGOSITY,
  640.    generally a conversational device, as in "my bogometer is reading
  641.    in the red on that idea" or "I think you just bent the needle on my
  642.    bogometer".
  643.  
  644. BOGON (bo'gon) [by analogy with proton/electron/neutron, but
  645.    doubtless reinforced by the similarity to "Vogon"] n. 1. The
  646.    elementary particle of bogosity (see QUANTUM BOGODYNAMICS).  For
  647.    instance, "the ethernet is emitting bogons again," meaning that it
  648.    is broken or acting in an erratic or bogus fashion. 2. A query
  649.    packet sent from a TCP/IP domain resolver to a root server, having
  650.    the reply bit set instead of the query bit.  3. Any bogus or
  651.    incorrectly formed packet sent on a network.  4. By extension, used
  652.    to refer metasyntactically to any bogus thing, such as "I'd like to
  653.    go to lunch with you but I've got to go to the weekly staff bogon."
  654.  
  655. BOGON FILTER (bo'gon fil'tr) n.  Any device, software or hardware,
  656.    which limits or suppresses the flow and/or emission of bogons.
  657.    Example: "Engineering hacked a bogon filter between the Cray and
  658.    the VAXen and now we're getting fewer dropped packets."
  659.  
  660. BOGOSITY (boh-gos-@-tee) n. 1. The degree to which something is BOGUS
  661.    (q.v.).  At CMU, bogosity is measured with a bogometer; typical
  662.    use: in a seminar, when a speaker says something bogus, a listener
  663.    might raise his hand and say, "My bogometer just triggered."  The
  664.    agreed-upon unit of bogosity is the microLenat (uL). 2. The
  665.    potential field generated by a bogon flux; see QUANTUM
  666.    BOGODYNAMICS.
  667.  
  668. BOGUS (boh'guhs) [WPI, Yale, Stanford] adj. 1. Non-functional.  "Your
  669.    patches are bogus."  2. Useless.  "OPCON is a bogus program."  3.
  670.    False.  "Your arguments are bogus."  4. Incorrect.  "That algorithm
  671.    is bogus."  5. Silly.  "Stop writing those bogus sagas."  (This
  672.    word seems to have some, but not all, of the connotations of
  673.    RANDOM.)  [Etymological note from Lehman/Reid at CMU: "Bogus" was
  674.    originally used (in this sense) at Princeton, in the late 60s.  It
  675.    was used not particularly in the CS department, but all over
  676.    campus.  It came to Yale, where one of us (Lehman) was an
  677.    undergraduate, and (we assume) elsewhere through the efforts of
  678.    Princeton alumni who brought the word with them from their alma
  679.    mater.  In the Yale case, the alumnus is Michael Shamos, who was a
  680.    graduate student at Yale and is now a faculty member here.  A
  681.    glossary of bogus words was compiled at Yale when the word was
  682.    first popularized (e.g., autobogophobia: the fear of becoming
  683.    bogotified).]
  684.  
  685. BOHR BUG (bor buhg) [from quantum physics] n. A repeatable BUG; one
  686.    which manifests reliably under a possibly unknown but well-defined
  687.    set of conditions. Antonym of HEISENBUG.
  688.  
  689. BOINK (boynk) [USENET] 1. To have sex with; compare BOUNCE, sense #3.
  690.    2. After the original Peter Korn "Boinkcon" USENET parties, used
  691.    for almost any net social gathering, e.g.  Miniboink, a small boink
  692.    held by Nancy Gillett in 1988; Minniboink, a Boinkcon in Minnesota
  693.    in 1989; Humpdayboinks, Wednesday get-togethers held in the San
  694.    Francisco Bay Area.
  695.  
  696. BONDAGE-AND-DISCIPLINE LANGUAGE (bon'd@j @n dis'@-plin lang'w@j) A
  697.    language such as Pascal, APL, or Prolog that, though ostensibly
  698.    general-purpose, is designed so as to enforce an author's theory of
  699.    "right programming" even though said theory is demonstrably
  700.    inadequate for systems or even vanilla general-purpose programming.
  701.    See LANGUAGES OF CHOICE.
  702.  
  703. BOOT (boot) [from "by one's bootstraps"] v.,n. To load and initialize
  704.    the operating system on a machine. This usage is no longer slang
  705.    (having become jargon in the strict sense), but the following
  706.    variants still are. COLD BOOT: a boot from a power- off condition.
  707.    WARM BOOT: a reboot with the CPU and all devices already powered
  708.    up, as after a hardware reset or software crash.
  709.  
  710. BOTTLENECKED (bot'l-nekt) adj. 1. Used by hackers specifically to
  711.    describe hardware under which performance is usually limited by
  712.    contention for one particular resource (such as disk, memory or
  713.    processor CLOCKS); see BALANCED. 2. Less often, applied to the
  714.    software analogue of sense #1, a slow code section or algorithm
  715.    through which all computation must pass (see also HOT SPOT).
  716.  
  717. BOUNCE (bowns) v. 1. [UNIX] An electronic mail message which is
  718.    undeliverable and returns an error notification to the sender is
  719.    said to `bounce'. See also BOUNCE MESSAGE. 2. [Stanford] To play
  720.    volleyball. "Bounce, bounce! Stop wasting time on the computer and
  721.    get out to the court!" 3. To engage in sexual intercourse.
  722.  
  723. BOUNCE MESSAGE (bowns mes'@j) [UNIX] n. Notification message returned
  724.    to sender by a site unable to relay EMAIL to the intended INTERNET
  725.    ADDRESS recipient or the next link in a BANG PATH (see BOUNCE).
  726.    Reasons might include a nonexistent or misspelled username or a
  727.    down relay site.  Bounce messages can themselves fail, with
  728.    occasionally ugly results; see SORCERER'S APPRENTICE MODE.
  729.  
  730. BOXEN (bok'sn) pl n. [back-formation from VAXEN] Fanciful plural of
  731.    `box' often encountered in the phrase `UNIX boxen', used to
  732.    describe commodity UNIX hardware. The implication is that any two
  733.    UNIX boxen are interchangeable.
  734.  
  735. BRAIN-DAMAGED (brayn'dam-@jd) [generalization of "Honeywell Brain
  736.    Damage" (HBD), a theoretical disease invented to explain certain
  737.    utter cretinisms in MULTICS] adj. Obviously wrong; CRETINOUS;
  738.    DEMENTED.  There is an implication that the person responsible must
  739.    have suffered brain damage, because he should have known better.
  740.    Calling something brain-damaged is really bad; it also implies it
  741.    is unusable.
  742.  
  743. BRANCH TO FISHKILL (branch to fish'kill) [IBM, from the location of
  744.    one of their facilities] n. Any unexpected jump in a program that
  745.    produces catastrophic or just plain weird results. See HYPERSPACE.
  746.  
  747. BREAK (brayk) v. 1. To cause to be broken (in any sense).  "Your
  748.    latest patch to the system broke the TELNET server."  2. (of a
  749.    program) To stop temporarily, so that it may be examined for
  750.    debugging purposes.  The place where it stops is a BREAKPOINT.
  751.  
  752. BREAKAGE (brayk'@j) [IBM] n. The extra people that must be added to an
  753.    organization because its master plan has changed; used esp. of
  754.    software and hardware development teams.
  755.  
  756. BRITTLE (bri'tl) adj. Said of software that's easily broken.  Often
  757.    describes the results of a research effort that were never intended
  758.    to be robust, but equally can apply commercially developed
  759.    software.
  760.  
  761. BROADCAST STORM (brod'kast storm) n. An incorrect packet broadcast
  762.    on a network that causes most hosts to respond all at once,
  763.    typically with wrong answers that start the process over again.
  764.    Also called NETWORK MELTDOWN. See also CHERNOBYL PACKET.
  765.  
  766. BROKEN (broh'kn) adj. 1. Not working properly (of programs).  2.
  767.    Behaving strangely; especially (of people), exhibiting extreme
  768.    depression.
  769.  
  770. BROKET (broh'k@t, broh'ket) [by analogy with "bracket": a "broken
  771.    bracket"] (primarily Stanford) n. Either of the characters "<" and
  772.    ">".  (At MIT, and apparently in THE REAL WORLD (q.v.) as well,
  773.    these are usually called ANGLE BRACKETS.)
  774.  
  775. BRUTE FORCE AND IGNORANCE (broot fohrs @nd ig'nohr-ans) n. A popular
  776.    design technique at many software houses. Dogmatic adherence to
  777.    design methodologies tends to encourage it. Characteristic of early
  778.    LARVAL STAGE programming; unfortunately, many never outgrow it.
  779.    Often abbreviated BFI, as in: "Gak, they used a bubble sort! That's
  780.    strictly from BFI."  Compare BOGOSITY.
  781.  
  782. BSD (bee-ess-dee) n. [acronym for Berkeley System Distribution] a
  783.    family of UNIX versions for the DEC VAX developed by Bill Joy and
  784.    others at UC Berkeley starting around 1980, incorporating TCP/IP
  785.    networking enhancements and many other features. The BSD versions
  786.    (4.1, 4.2, and 4.3) and commercial versions derived from them
  787.    (SunOS and Mt. Xinu) held the technical lead in the UNIX world
  788.    until AT&T's successful standardization efforts after about 1986,
  789.    and are still widely popular. See UNIX, USG UNIX.
  790.  
  791. BUCKY BITS (buh'kee bits) [primarily Stanford] n. The bits produced by
  792.    the CTRL and META shift keys on a Stanford (or Knight) keyboard. It
  793.    is rumored that these were in fact named for Buckminster Fuller
  794.    during a period when he was consulting at Stanford. Unfortunately,
  795.    legend also has it that "Bucky" was Niklaus Wirth's nickname when
  796.    *he* was consulting at Stanford and that he first suggested the
  797.    idea of the meta key, so its bit was named after him. DOUBLE BUCKY:
  798.    adj. Using both the CTRL and META keys.  "The command to burn all
  799.    LEDs is double bucky F." See also META BIT, COKEBOTTLE.
  800.  
  801. BUFFER OVERFLOW (buhf'r oh'vr-floh) n. What typically happens when an
  802.    OS or application is fed data faster than it can buffer and process
  803.    it. Used metaphorically of human mental processes. Ex. "Sorry, I
  804.    got four phone calls in three minutes last night and lost your
  805.    message to a buffer overflow."
  806.  
  807. BUG (buhg) [from telephone terminology, "bugs in a telephone cable",
  808.    blamed for noisy lines] n. An unwanted and unintended property of a
  809.    program, esp. one which causes it to malfunction. See FEATURE.
  810.  
  811. BULLETPROOF (bul'@t-proof) adj. Used of an algorithm or implementation
  812.    considered extremely robust; lossage-resistant; capable of
  813.    correctly recovering from any imaginable exception condition. This
  814.    is a rare and valued quality.
  815.  
  816. BUM (buhm) 1. v. To make highly efficient, either in time or space,
  817.    often at the expense of clarity.  "I managed to bum three more
  818.    instructions."  2. n. A small change to an algorithm to make it
  819.    more efficient.  Usage: somewhat rare. See TUNE.
  820.  
  821. BUMP (buhmp) v. Synonym for increment.  Has the same meaning as C's ++
  822.    operator. Used esp. of counter variables, pointers (see POINTER
  823.    ARITHMETIC) and index dummies in for, while, and do-until loops.
  824.  
  825. BURBLE (ber'bl) v. Like FLAME, but connotes that the source is truly
  826.    clueless and ineffectual (mere flamers can be competent). A term of
  827.    deep contempt.
  828.  
  829. BUSY-WAIT (bi'zee-wayt) v. To wait on an event by SPINning through a
  830.    tight or timed-delay loop that checks for the event on each pass,
  831.    as opposed to setting up an interrupt handler and continuing
  832.    execution on another part of the task. A wasteful technique, best
  833.    avoided on time-sharing systems where a busy-waiting program may
  834.    hog the processor.
  835.  
  836. BUZZ (buhz) v. To run in a very tight loop, perhaps without guarantee
  837.    of getting out. See SPIN.
  838.  
  839. BWQ [bee duhb'l-yoo kyoo) [IBM] n. Buzz Word Quotient. Usually roughly
  840.    proportional to BOGOSITY. See TLA.
  841.  
  842. BYTESEXUAL (biet-seks'u-@l) adj. Said of hardware, denotes
  843.    willingness to compute or pass data in either BIG ENDIAN or LITTLE
  844.    ENDIAN format (depending, presumably, on a mode bit somewhere).
  845.  
  846.             = C =
  847.  
  848. C (see) n. 1. The third letter of the Latin alphabet. 2. The name of a
  849.    programming language designed by Dennis Ritchie during the early
  850.    1970s and first used to implement UNIX (q.v.). So called because
  851.    many features derived from an earlier interpreter named 'B' in
  852.    commemoration of *its* parent, BCPL; before Bjarne Stroustrup
  853.    settled the question by designing C++, there was a humorous debate
  854.    over whether C's successor should be named `D' or 'P'.  C became
  855.    immensely popular outside Bell Labs after about 1980 and is now the
  856.    dominant language in systems and microcomputer applications
  857.    programming. See LANGUAGES OF CHOICE.
  858.  
  859. CAMBRIDGE NOTATION (kaym'brij no-ta'shn) [LISP] n. The now-standard
  860.    way of writing LISP expressions as nested lists, with parens and
  861.    spaces; as opposed to the earlier and technically purer practice of
  862.    writing full S-expressions with cons dots. Supposedly invented as a
  863.    KLUGE because a full parser for S-expressions would have been
  864.    harder to write.
  865.  
  866. CAN (can) v. To abort a job on a time-sharing system. Used esp. when
  867.    the person doing the deed is an operator, as in CANNED FROM THE
  868.    CONSOLE. Frequently used in an imperative sense, as in "Can that
  869.    print job, the LPT just popped a sprocket!". Synymous with GUN.
  870.  
  871. CANONICAL (k@-nahn'i-kl) adj. The usual or standard state or manner
  872.    of something.  A true story: One Bob Sjoberg, new at the MIT AI
  873.    Lab, expressed some annoyance at the use of jargon.  Over his loud
  874.    objections, we made a point of using jargon as much as possible in
  875.    his presence, and eventually it began to sink in.  Finally, in one
  876.    conversation, he used the word "canonical" in jargon-like fashion
  877.    without thinking.  Steele: "Aha!  We've finally got you talking
  878.    jargon too!"  Stallman: "What did he say?"  Steele: "He just used
  879.    `canonical' in the canonical way."
  880.  
  881. CASTERS UP MODE (cas'trz uhp mohd) [IBM] n. Yet another synonym for
  882.    `broken' or `down'.
  883.  
  884. CAT (cat) [from UNIX cat(1)] v. To spew an entire (notionally large)
  885.    file to the screen or some other output sink without pause; by
  886.    extension, to dump large amounts of data at an unprepared target or
  887.    with no intention of browsing it carefully. Usage: considered
  888.    silly. Rare outside UNIX sites. See also DD, BLT.
  889.  
  890. CATATONIA (kat-@-toh'nee-uh) n. A condition of suspended animation
  891.    in which the system is in a wedged (CATATONIC) state.
  892.  
  893. CDR (ku'dr) [from LISP] v. With "down", to trace down a list of
  894.    elements.  "Shall we cdr down the agenda?"  Usage: silly.
  895.  
  896. CELL-REPAIR MACHINES (sel r:-peir' m:-sheens') n. An often-discussed
  897.    probable consequence of NANOTECHNOLOGY; NANOBOTS specifically
  898.    programmed to repair tissue at the cellular level. Possible uses
  899.    include reversing freezing damage from CRYONICS procedures and
  900.    correction of mutagen-damaged DNA (including eradication of
  901.    retrovirii and oncogenes).
  902.  
  903. CHAD (chad) n. 1. The perforated edge strips on printer paper, after
  904.    they have been separated from the printed portion. Also called
  905.    SELVAGE and PERF. 2. obs. the confetti-like paper bits punched out
  906.    of cards or paper tape; this was also called `chaff'.
  907.  
  908. CHAIN (chayn) [orig. from BASIC's CHAIN statement] v. When used of
  909.    programming languages, refers to a statement that allows a parent
  910.    executable to hand off execution to a child without going through
  911.    the OS command interpreter. The state of the parent program is lost
  912.    and there is no returning to it. Though this facility used to be
  913.    common on memory-limited micros and is still widely supported for
  914.    backward compatibility, the jargon usage is semi-obsolescent; in
  915.    particular most UNIX programmers will think of this as an EXEC.
  916.    Oppose the more modern SUBSHELL.
  917.  
  918. CHAR (keir; [rarely] char) n. Shorthand for `character'. Esp. used by
  919.    C programmers, as `char' is C's typename for character data.
  920.  
  921. CHASE POINTERS (chays uh poyn'tr) v. To go through multiple levels of
  922.    indirection, as in traversing a linked list or graph structure.
  923.    Used esp. by programmers in C, where explicit pointers are a very
  924.    common data type.
  925.  
  926. CHERNOBYL PACKET (cher-no'b@l pa'k@t) n. An IP Ethergram with both
  927.    source and destination Ether and IP address set as the respective
  928.    broadcast address. So called because it induces NETWORK MELTDOWN.
  929.  
  930. CHINESE RAVS (chie'neez ravs) [MIT] n. Pot-stickers. Kuo-teh. Gyoza.
  931.    Oriental dumplings, especially when pan-fried rather than steamed.
  932.    A favorite hacker appetizer. See ORIENTAL FOOD, STIR-FRIED RANDOM.
  933.  
  934. CHOKE (chohk) vi.  To reject input, often ungracefully.  Examples: "I
  935.    tried building X, but cpp choked on all those #define's." See BARF,
  936.    GAG.
  937.  
  938. CHOMP (chomp) v. To lose; to chew on something of which more was
  939.    bitten off than one can.  Probably related to gnashing of teeth.
  940.    See BAGBITER.  A hand gesture commonly accompanies this, consisting
  941.    of the four fingers held together as if in a mitten or hand puppet,
  942.    and the fingers and thumb open and close rapidly to illustrate a
  943.    biting action.  The gesture alone means CHOMP CHOMP (see Verb
  944.    Doubling).
  945.  
  946. CHRISTMAS TREE PACKET (krist'm@s tree pa'k@t) n. A packet with every
  947.    single option set for whatever protocol is in use.
  948.  
  949. CHROME (krohm) [from automotive slang via wargaming] n. Showy features
  950.    added to attract users, but which contribute little or nothing to
  951.    the power of a system. "The 3D icons in Motif are just chrome!"
  952.    Distinguished from BELLS AND WHISTLES by the fact that the former
  953.    are usually added to gratify developers' own desires for
  954.    featurefulness.
  955.  
  956. CHURCH OF THE SUB-GENIUS (cherch @v dh@ suhb-gee'-ny@s) A mutant
  957.    offshoot of DISCORDIANISM launched in 1981 as a spoof of
  958.    fundamentalist Christianity by the "Rev." Ivan Stang, a brilliant
  959.    satirist with a gift for promotion. Popular among hackers as a rich
  960.    source of bizarre imagery and references such as: "Bob" the divine
  961.    drilling-equipment salesman, the Benevolent Space Xists and the
  962.    Stark Fist of Removal. Much Sub-Genius theory is concerned with the
  963.    acquisition of the mystical substance or quality of "slack".
  964.  
  965. CLASSIC C (klas'ik see) n.  The C programming language as defined in
  966.    the first edition of the book ``The C Programming Language'' by
  967.    ``Brian W.  Kernighan and Dennis M. Ritchie'' with some small
  968.    additions.  It is also known as ``K & R C.''  The name came into
  969.    use during the standardisation process for C by the ANSI X3J11
  970.    committee.
  971.  
  972. CLOCKS (kloks) n. Processor logic cycles, so called because each
  973.    generally corresponds to one clock pulse in the processor's timing.
  974.    The relative execution times of instructions on a machine are
  975.    usually discussed in `clocks' rather than absolute fractions of a
  976.    second.
  977.  
  978. CLONE (klohn) n. 1. An exact duplicate, as in "our product is a clone
  979.    of their product."  2. A shoddy, spurious copy, as in "their
  980.    product is a clone of our product." 3. A PC-BUS/ISA or
  981.    EISA-compatible 80x86 based microcomputer (in-context shorthand for
  982.    "PC clone"). 3. In the construction UNIX CLONE: An OS designed to
  983.    deliver a UNIX-lookalike environment sans UNIX license fees, or
  984.    with additional "mission-critical" features such as support for
  985.    real-time programming.
  986.  
  987. CLOSE (klohz) n. Abbreviation for "close (or right) parenthesis", used
  988.    when necessary to eliminate oral ambiguity.  See OPEN.
  989.  
  990. CLUSTERGEEKING (kluh'ster-gee`king) [CMU] n. An activity defined by
  991.    spending more time at a computer cluster doing CS homework than
  992.    most people spend breathing.
  993.  
  994. COBOL FINGERS (koh'bol fing'grs) n. Reported from Sweden, a
  995.    (hypothetical) disease one might get from programming in COBOL. The
  996.    language requires extremely voluminous code. Programming too much
  997.    in COBOL causes the fingers to wear down (by endless typing), until
  998.    short stubs remain. This malformity is called COBOL FINGERS. "I
  999.    refuse to type in all that source code again, it will give me cobol
  1000.    fingers!"
  1001.  
  1002. CODE GRINDER (kohd grien'dr) n. 1. A SUIT-wearing minion of the sort
  1003.    hired in legion strength by banks and insurance companies to
  1004.    implement payroll packages in RPG and other such unspeakable
  1005.    horrors. This is about as far from hackerdom as you can get and
  1006.    still touch a computer. Connotes pity. See REAL WORLD. 2. Used of
  1007.    or to a hacker, a really serious slur on the person's creative
  1008.    ability; connotes a design style characterized by primitive
  1009.    technique, rule-boundedness, and utter lack of imagination.
  1010.  
  1011. CODE POLICE (kohd p@-lees') [by analogy with "thought police"] n. A
  1012.    mythical team of Gestapo-like storm troopers that might burst into
  1013.    one's office and arrest one for violating style rules. May be used
  1014.    either "seriously" (to underline a claim that a particular style
  1015.    violation is dangerous) or (more often) ironically (to suggest that
  1016.    the practice under discussion is condemned mainly by anal-retentive
  1017.    weenies).
  1018.  
  1019. CODEWALKER (kohd'wok-r) n. A program component that traverses other
  1020.    programs for a living. Compilers have codewalkers in their front
  1021.    ends; so do cross-reference generators and some database
  1022.    front-ends. As in "This language extension would require a
  1023.    codewalker to implement."
  1024.  
  1025. COKEBOTTLE (kohk'bot-l) n. Any very unusual character.  MIT people
  1026.    used to complain about the "control-meta-cokebottle" commands at
  1027.    SAIL, and SAIL people complained right back about the
  1028.    "altmode-altmode-cokebottle" commands at MIT. Since the demise of
  1029.    the SPACE-CADET KEYBOARD this is no longer a serious usage, but may
  1030.    be invoked humorously to describe an (unspecified) weird or
  1031.    non-intuitive keystroke command.
  1032.  
  1033. COME FROM (kuhm fruhm) n. A semi-mythical language construct dual to
  1034.    the `go to'; COME FROM <label> would cause the referenced label to
  1035.    act as a sort of trapdoor, so that if the program ever reached it
  1036.    control would quietly fall through to the statement following the
  1037.    COME FROM. COME FROM was first proposed in a Datamation article in
  1038.    1973 that parodied the then-raging `structured programming' wars
  1039.    (see CONSIDERED HARMFUL). It was actually implemented for the first
  1040.    time seventeen years later, in C-INTERCAL (see INTERCAL,
  1041.    RETROCOMPUTING); knowledgeable observers are still reeling from
  1042.    shock.
  1043.  
  1044. COMPRESS (k@m-pres') [UNIX] v. When used witchout a qualifier,
  1045.    generally refers to CRUNCHing of a file using a particular C
  1046.    implementation of Lempel-Ziv compression by James A. Woods et. al.
  1047.    and widely circulated via USENET. Use of CRUNCH (q.v.) itself in
  1048.    this sense is rare among UNIX hackers.
  1049.  
  1050. COMPUTER GEEK (kuhm-pyoo-tr geek) n.  One who eats [computer] bugs
  1051.    for a living. One who fulfills all of the dreariest negative
  1052.    stereotypes about hackers: an asocial, malodorous, pasty-faced
  1053.    monomaniac with all the personality of a cheese grater. Cannot be
  1054.    used by outsiders without implied insult to all hackers; compare
  1055.    black-on-black usage of "nigger". A computer geek may be either a
  1056.    fundamentally clueless individual or a true-hacker in LARVAL STAGE.
  1057.    Also called TURBO NERD, TURBO GEEK. See also CLUSTERGEEKING.
  1058.  
  1059. COMPUTRON (kom-pyoo-tron) n. A notional unit of computing power
  1060.    combining instruction speed and storage capacity, dimensioned
  1061.    roughly in instructions-per- sec times megabytes-of-main-store
  1062.    types megabytes-of-mass-storage.  "That machine can't run GNU
  1063.    Emacs, it doesn't have enough computrons!" This term is usually
  1064.    used in metaphors that treat computing power as a fungible
  1065.    commodity good like a crop yield or diesel horsepower. See BITTY
  1066.    BOX, GET A REAL COMPUTER, TOY, CRANK.
  1067.  
  1068. CONNECTOR CONSPIRACY (k@-nek'ter k@n-spi'r@h-see) [probably came into
  1069.    prominence with the appearance of the KL-10, none of whose
  1070.    connectors match anything else] n. The tendency of manufacturers
  1071.    (or, by extension, programmers or purveyors of anything) to come up
  1072.    with new products which don't fit together with the old stuff,
  1073.    thereby making you buy either all new stuff or expensive interface
  1074.    devices.
  1075.  
  1076. CONS (kons) [from LISP] 1. v. To add a new element to a list.  2.
  1077.    CONS UP: v. To synthesize from smaller pieces: "to cons up an
  1078.    example".
  1079.  
  1080. CONSIDERED HARMFUL (k@n-si'derd harm'fl) adj. Edsger Dijkstra's
  1081.    infamous March 1968 CACM note, _Goto_Statement_Considered_Harmful_,
  1082.    fired the first salvo in the "structured programming" wars. In the
  1083.    years since then a number of both serious papers and parodies have
  1084.    borne titles of the form "X considered Y" in reference to it. The
  1085.    "structured programming" wars eventually blew over with the
  1086.    realization that both sides were wrong, but use of such titles has
  1087.    remained as a persistent minor in-joke.
  1088.  
  1089. COOKIE MONSTER (ku'kee mon'str) n. Any of a family of early (1970s)
  1090.    hacks reported on ITS and elswhere that would lock up either the
  1091.    victim's terminal (on a time-sharing machine) or the operator's
  1092.    console (on a batch mainframe), repeatedly demanding "I WANT A
  1093.    COOKIE". The required responses ranged in complexity from "HAVE A
  1094.    COOKIE" upward. See also WABBIT.
  1095.  
  1096. COPYLEFT (kop'ee-left) n. 1. The copyright notice carried by GNU
  1097.    EMACS and other Free Software Foundation software granting re-use
  1098.    and reproduction rights to all comers. 2. By extension, any
  1099.    copyright notice intended to achieve similar aims.
  1100.  
  1101. CORE (kor) n. Main storage or DRAM. Dates from the days of
  1102.    ferrite-core memory; now archaic, but still used in the UNIX
  1103.    community and by old-time hackers or those who would sound like
  1104.    same.
  1105.  
  1106. CORE DUMP (kor duhmp) n. [from UNIX] 1. Catastrophic program failure
  1107.    due to internal error. 2. By extension, used for humans passing out
  1108.    or registering extreme shock. Usage: rare.
  1109.  
  1110. CORE WARS (kohr wohrz) n. A game between "assembler" programs in a
  1111.    simulated machine, where the objective is to kill your opponent's
  1112.    program by overwriting it. This was popularized by A.K. Dewdney's
  1113.    column in _Scientific_American_. It is rumored that the game is a
  1114.    civilized version of an amusement common on pre-MMU multitasking
  1115.    machines.
  1116.  
  1117. CORGE (korj) n. Yet another meta-syntactic variable, invented by Mike
  1118.    Galleher and propagated by the Gosmacs documentation. See GRAULT.
  1119.  
  1120. CP/M (see-pee-em) [Control Program for Microcomputers] An early
  1121.    microcomputer OS written by hacker Gary Kildall for Z-80 based
  1122.    machines, very popular in the late 1970s until virtually wiped out
  1123.    by MS-DOS after the release of the IBM PC in 1981 (legend has it
  1124.    that Kildall's company blew their chance to write the PC's OS
  1125.    because Kildall decided to spend the day IBM's reps wanted to meet
  1126.    with him enjoying the perfect flying weather in his private plane).
  1127.    Many of its features and conventions strongly resemble those of
  1128.    early DEC operating systems such as OS9, RSTS and RSX-11.  See
  1129.    MS-DOS, OPERATING SYSTEM.
  1130.  
  1131. CRACKER (krak'r) n. One who breaks security on a system. Coined c.
  1132.    1985 by hackers in defense against journalistic misuse of HACKER,
  1133.    see definition #6.
  1134.  
  1135. CRANK (krank) [from automotive slang] v. Verb used to describe the
  1136.    performance of a machine, especially sustained performance. "This
  1137.    box cranks about 6 MegaFLOPS, with a burst mode of twice that on
  1138.    vectorized operations"
  1139.  
  1140. CRASH (krash) 1. n. A sudden, usually drastic failure.  Most often
  1141.    said of the system (q.v., definition #1), sometimes of magnetic
  1142.    disk drives.  "Three lusers lost their files in last night's disk
  1143.    crash."  A disk crash which entails the read/write heads dropping
  1144.    onto the surface of the disks and scraping off the oxide may also
  1145.    be referred to as a "head crash".  2. v. To fail suddenly.  "Has
  1146.    the system just crashed?"  Also used transitively to indicate the
  1147.    cause of the crash (usually a person or a program, or both).
  1148.    "Those idiots playing SPACEWAR crashed the system."  3. Sometimes
  1149.    said of people hitting the sack after a long HACKING RUN, see GRONK
  1150.    OUT.
  1151.  
  1152. CRASH AND BURN (krash @n bern) v.,n. A spectacular crash, in the mode
  1153.    of the conclusion of the car chase scene from Steve McQueen's
  1154.    "Bullitt".  Sun-3 monitors losing the flyback transformer and
  1155.    lightning strikes on VAX-11/780 backplanes are notable crash and
  1156.    burn generators.
  1157.  
  1158. CRAWLING HORROR (kraw'lng hor'@r) n. Ancient crufty hardware or
  1159.    software that forces beyond the control of the hackers at a site
  1160.    refuse to let die. Like DUSTY DECK or GONKULATOR, but connotes that
  1161.    the thing described is not just an irritation but an active menace
  1162.    to health and sanity.  "Mostly we code new stuff in C, but they pay
  1163.    us to maintain one big Fortran II application from nineteen-sixty-X
  1164.    that's a real crawling horror...". Compare WOMBAT.
  1165.  
  1166. CRAY (kray) n. 1. One of the line of supercomputers designed by Cray
  1167.    Research. 2. Any supercomputer at all.
  1168.  
  1169. CRAYON (krayon) n. Someone who works on Cray supercomputers.  More
  1170.    specifically implies a programmer, probably of the CDC ilk,
  1171.    probably male, and and almost certainly wearing a tie (irrespective
  1172.    of gender).  Unicos systems types who have a Unix background tend
  1173.    not to be described as crayons.
  1174.  
  1175. CREEPING FEATURITIS (kree'ping fee-ch@r-ie't@s) n. Describes a
  1176.    systematic tendency to load more CHROME onto systems at the expence
  1177.    of whatever ELEGANCE they may have posessed when originally
  1178.    designed. See FEEPING CREATURITIS.  "You know, the main problem
  1179.    with BSD UNIX has always been creeping featuritis".
  1180.  
  1181. CRETIN (kre'tn) 1. n. Congenital LOSER (q.v.).  2. CRETINOUS: adj.
  1182.    See BLETCHEROUS and BAGBITING.  Usage: somewhat ad hominem.
  1183.  
  1184. CRIPPLEWARE (krip'@l-weir) n. SHAREWARE which has some important
  1185.    functionality deliberately removed, so as to entice potential users
  1186.    to pay for a working version. See also GUILTWARE.
  1187.  
  1188. CRLF (ker'lif, sometimes krul'lif) n. A carriage return (CR) followed
  1189.    by a line feed (LF).  See TERPRI.
  1190.  
  1191. CROCK (krok) [from mainstream "crock of shit"] n. 1. An awkward
  1192.    feature or programming technique that ought to be made cleaner.
  1193.    Example: Using small integers to represent error codes without the
  1194.    program interpreting them to the user (as in, for example, UNIX
  1195.    make(1)) is a crock.  2. Also, a technique that works acceptably
  1196.    but which is quite prone to failure if disturbed in the least, for
  1197.    example depending on the machine opcodes having particular bit
  1198.    patterns so that you can use instructions as data words too; a
  1199.    tightly woven, almost completely unmodifiable structure.
  1200.  
  1201. CROSS-POST (kros'pohst) [USENET] To post an article to several
  1202.    newsgroups or topics.
  1203.  
  1204. CRUDWARE (kruhd-weir) n. Pejorative term for the hundreds of megabytes
  1205.    of low-quality FREEWARE circulated by user's groups and BBS systems
  1206.    in the micro-hobbyist world. "Yet *another* set of disk catalog
  1207.    utilities for MS-DOS?  What crudware!"
  1208.  
  1209. CRUFTY (kruhf'tee) [from "cruddy"] adj. 1. Poorly built, possibly
  1210.    overly complex.  "This is standard old crufty DEC software".  Hence
  1211.    CRUFT, n. shoddy construction.  2. Unpleasant, especially to the
  1212.    touch, often with encrusted junk.  Like spilled coffee smeared with
  1213.    peanut butter and catsup.  Hence CRUFT, n. disgusting mess.  3.
  1214.    Generally unpleasant.  CRUFTY or CRUFTIE n. A small crufty object
  1215.    (see FROB); often one which doesn't fit well into the scheme of
  1216.    things.  "A LISP property list is a good place to store crufties
  1217.    (or, random cruft)."  [Note: Does CRUFT have anything to do with
  1218.    the Cruft Lab at Harvard?  I don't know, though I was a Harvard
  1219.    student. - GLS]
  1220.  
  1221. CRUFT TOGETHER, CRUFT UP (kruhft too-ge'thr, kruhft uhp) v. To throw
  1222.    together something ugly but temporarily workable. Like v. KLUGE,
  1223.    but more pejorative. See CRUFTY.
  1224.  
  1225. CRUNCH (kruhnch) v. 1. To process, usually in a time-consuming or
  1226.    complicated way.  Connotes an essentially trivial operation which
  1227.    is nonetheless painful to perform.  The pain may be due to the
  1228.    triviality being imbedded in a loop from 1 to 1000000000.  "FORTRAN
  1229.    programs do mostly number crunching."  2. To reduce the size of a
  1230.    file by a complicated scheme that produces bit configurations
  1231.    completely unrelated to the original data, such as by a Huffman
  1232.    code.  (The file ends up looking like a paper document would if
  1233.    somebody crunched the paper into a wad.)  Since such compression
  1234.    usually takes more computations than simpler methods such as
  1235.    counting repeated characters (such as spaces) the term is doubly
  1236.    appropriate.  (This meaning is usually used in the construction
  1237.    "file crunch(ing)" to distinguish it from "number crunch(ing)".)
  1238.    See COMPRESS.  3. n. The character "#".  Usage: used at Xerox and
  1239.    CMU, among other places. See ASCII.
  1240.  
  1241. CRUNCHA CRUNCHA CRUNCHA (kruhnchah kruhnchah kruhnchah) interj. An
  1242.    encouragement sometimes muttered to a machine bogged down in
  1243.    serious GROVELLING. Also describes a notional sound made by
  1244.    grovelling hardware. See WUGGA WUGGA.
  1245.  
  1246. CRYONICS (kry-o'niks) n. The practice of freezing oneself in hopes of
  1247.    being revived in the future by CELL REPAIR MACHINES. A possible
  1248.    route to technological immortality already taken by 1990 by more
  1249.    than a handful of persons with terminal illnesses.
  1250.  
  1251. CTSS (see-tee-ess-ess) n. Compatible Time-Sharing System. An early
  1252.    (1963) experiment in the design of interactive time-sharing
  1253.    operating systems. Cited here because it was ancestral to MULTICS,
  1254.    UNIX, and ITS (q.v.).
  1255.  
  1256. CUBING (kyoo'bing) [parallel with "tubing"] v. 1. Hacking on an IPSC
  1257.    (Intel Personal SuperComputer) hypercube.  "Louella's gone cubing
  1258.    AGAIN!!"  2. An indescribable form of self-torture, see sense #1.
  1259.  
  1260. CUSPY (kuhs'pee) [from the DEC acronym CUSP, for Commonly Used System
  1261.    Program, i.e., a utility program used by many people] [WPI] adj. 1.
  1262.    (of a program) Well-written.  2. Functionally excellent.  A program
  1263.    which performs well and interfaces well to users is cuspy.  See
  1264.    RUDE.
  1265.  
  1266. CYBERPUNK (sie'ber-puhnk) [orig. by SF critic Garder Dozois] n.,adj. A
  1267.    subgenre of SF launched in 1982 by William Gibson's epoch-making
  1268.    novel _Neuromancer_. Gibson's near-total ignorance of computers and
  1269.    the present-day hacker culture enabled him to speculate about the
  1270.    role of computers and hackers in futures in ways hackers have since
  1271.    found both irritatingly naive and tremendously stimulating.
  1272.    Gibson's work was widely imitated, in particular by the short-lived
  1273.    but innovative "Max Headroom" TV series. See CYBERSPACE, ICE,
  1274.    GO FLATLINE.
  1275.  
  1276. CYBERSPACE (sie'ber-spays) n. Notional "information-space" loaded with
  1277.    visual cues and navigable with brain-computer interfaces called
  1278.    "cyberspace decks"; a characteristic prop of CYBERPUNK SF. At time
  1279.    of writing (1990) serious efforts to construct VIRTUAL REALITY
  1280.    interfaces modelled explicitly on CYBERSPACE are already under way,
  1281.    using more conventional devices such as glove sensors and binocular
  1282.    TV headsets. Few hackers are prepared to outright deny the
  1283.    possibility of a cyberspace someday evolving out of THE NETWORK.
  1284.  
  1285.