home *** CD-ROM | disk | FTP | other *** search
/ norge.freeshell.org (192.94.73.8) / 192.94.73.8.tar / 192.94.73.8 / pub / hacking / JARGON < prev    next >
Text File  |  2003-07-17  |  94KB  |  2,378 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.                      GLOSSARY OF JARGON
  9.  
  10.  
  11. Compiled by Guy L. Steele Jr., Raphael Finkel, Donald Woods,
  12.              Geoff Goodfellow and Mark Crispin,
  13.   with assistance from the MIT and Stanford AI communities
  14.             and Worcester Polytechnic Institute.
  15.      Some contributions were submitted via the ARPAnet
  16.                  from miscellaneous sites.
  17.  
  18.  
  19.  
  20.  
  21.  
  22.  
  23.  
  24. Verb doubling: a standard construction is to double  a  verb
  25.     and  use  it  as  a  comment on what the implied subject
  26.     does.  Often used to terminate a conversation.   Typical
  27.     examples involve WIN, LOSE, HACK, FLAME, BARF, CHOMP:
  28.  
  29.             "The disk heads just crashed." "Lose, lose."
  30.             "Mostly he just talked about his --- crock.  Flame, flame."
  31.             "Boy, what a bagbiter!  Chomp, chomp!"
  32.  
  33.  
  34. Soundalike slang: similar to Cockney rhyming  slang.   Often
  35.     made up on the spur of the moment.  Standard examples:
  36.  
  37.             Boston Globe -> Boston Glob
  38.             Herald American -> Horrid (Harried) American
  39.             New York Times -> New York Slime
  40.             historical reasons -> hysterical raisins
  41.             government property - do not duplicate (seen on keys)
  42.                     -> government duplicity - do not propagate
  43.  
  44.     Often the substitution will be made in such a way as  to
  45.     slip in a standard jargon word:
  46.  
  47.             Dr. Dobb's Journal -> Dr. Frob's Journal
  48.             creeping featurism -> feeping creaturism
  49.             Margaret Jacks Hall -> Marginal Hacks Hall
  50.  
  51.  
  52. The -P convention: turning a word into a question by append-
  53.     ing  the  syllable  "P";  from  the  LISP  convention of
  54.     appending the  letter  "P"  to  denote  a  predicate  (a
  55.     Boolean-valued  function).  The question should expect a
  56.     yes/no answer, though it needn't.  (See T and NIL.)
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68.                            - 2 -
  69.  
  70.  
  71.  
  72.             At dinnertime: "Foodp?" "Yeah, I'm pretty hungry." or "T!"
  73.             "State-of-the-world-P?" (Straight) "I'm about to go home."
  74.                           (Humorous) "Yes, the world has a state."
  75.  
  76.     [One of the best of these is a Gosperism (i.e.,  due  to
  77.     Bill  Gosper).  When we were at a Chinese restaurant, he
  78.     wanted to know whether someone would like to share  with
  79.     him  a  two-person-sized bowl of soup.  His inquiry was:
  80.     "Split-p soup?" --GLS]
  81.  
  82. Peculiar nouns: MIT AI hackers love to  take  various  words
  83.     and  add  the  wrong  endings  to them to make nouns and
  84.     verbs, often by extending a standard rule to  nonuniform
  85.     cases.  Examples:
  86.  
  87.                     porous => porosity
  88.                     generous => generosity
  89.             Ergo:   mysterious => mysteriosity
  90.                     ferrous => ferocity
  91.  
  92.     Other examples: winnitude, disgustitude, hackification.
  93.  
  94.  
  95. Spoken inarticulations: Words such as "mumble," "sigh,"  and
  96.     "groan"  are spoken in places where their referent might
  97.     more naturally be used.  It has been suggested that this
  98.     usage  derives  from  the  impossibility of representing
  99.     such noises in a com link.  Another expression sometimes
  100.     heard is "complain!"
  101.  
  102. @BEGIN (primarily CMU) with @END, used humorously in writing
  103.     to  indicate  a  context  or to remark on the surrounded
  104.     text.  >From the SCRIBE command of the same  name.   For
  105.     example:
  106.  
  107.             @Begin(Flame)
  108.             Predicate logic is the only good programming language.
  109.             Anyone who would use anything else is an idiot.  Also,
  110.             computers should be tredecimal instead of binary.
  111.             @End(Flame)
  112.  
  113.  
  114. ANGLE BRACKETS (primarily MIT) n. Either of  the  characters
  115.     "<" and ">".  See BROKET.
  116.  
  117. AOS (aus (East coast) ay-ahs (West coast)) [based on a  PDP-
  118.     10  increment  instruction] v. To increase the amount of
  119.     something.  "Aos the campfire." Usage: considered silly.
  120.     See SOS.
  121.  
  122. ARG n. Abbreviation for "argument" (to a function), used  so
  123.     often as to have become a new word.
  124.  
  125.  
  126.  
  127.  
  128.  
  129.  
  130.  
  131.  
  132.  
  133.  
  134.                            - 3 -
  135.  
  136.  
  137. AUTOMAGICALLY adv. Automatically, but in a  way  which,  for
  138.     some reason (typically because it is too complicated, or
  139.     too ugly, or perhaps even too  trivial),  I  don't  feel
  140.     like  explaining to you.  See MAGIC.  Example: Some pro-
  141.     grams which produce XGP output files spool them automag-
  142.     ically.
  143.  
  144. BAGBITER 1. n. Equipment  or  program  that  fails,  usually
  145.     intermittently.   2. BAGBITING: adj. Failing hardware or
  146.     software.  "This bagbiting system won't let me  get  out
  147.     of spacewar." Usage: verges on obscenity.  Grammatically
  148.     separable; one may speak of "biting the bag."  Synonyms:
  149.     LOSER,   LOSING,   CRETINOUS,  BLETCHEROUS,  BARFUCIOUS,
  150.     CHOMPER, CHOMPING.
  151.  
  152. BANG n. Common alternate name for EXCL (q.v.), especially at
  153.     CMU.  See SHRIEK.
  154.  
  155. BAR 1. The second metasyntactic variable, after FOO.   "Sup-
  156.     pose  we  have  two  functions  FOO  and BAR.  FOO calls
  157.     BAR..." 2. Often appended to FOO to produce FOOBAR.
  158.  
  159. BARF [from the "layman" slang, meaning "vomit"]  1.  interj.
  160.     Term of disgust.  See BLETCH.  2. v. Choke, as on input.
  161.     May mean to give an error message.  "The  function  com-
  162.     pares  two fixnums or two flonums, and barfs on anything
  163.     else." 3. BARFULOUS, BARFUCIOUS: adj. Said of  something
  164.     which would make anyone barf, if only for aesthetic rea-
  165.     sons.
  166.  
  167. BELLS AND WHISTLES n. Unnecessary but  useful  (or  amusing)
  168.     features  of  a  program.  "Now that we've got the basic
  169.     program working, let's go back and add  some  bells  and
  170.     whistles."  Nobody  seems  to  know what distinguishes a
  171.     bell from a whistle.
  172.  
  173. BIGNUMS [from Macsyma] n. 1. In backgammon, large numbers on
  174.     the  dice.   2. Multiple-precision (sometimes infinitely
  175.     extendable) integers  and,  through  analogy,  any  very
  176.     large  numbers.   3. EL CAMINO BIGNUM: El Camino Real, a
  177.     street through the San Francisco peninsula  that  origi-
  178.     nally extended (and still appears in places) all the way
  179.     to Mexico City.  It was termed "El Camino Double  Preci-
  180.     sion"  when someone noted it was a very long street, and
  181.     then "El Camino Bignum" when it was pointed out that  it
  182.     was hundreds of miles long.
  183.  
  184. BIN [short for BINARY; used as a second file name on ITS] 1.
  185.     n.   BINARY.  2. BIN FILE: A file containing the BIN for
  186.     a program.  Usage: used at MIT, which runs on ITS.   The
  187.     equivalent  term  at Stanford is DMP (pronounced "dump")
  188.     FILE.  Other names used include SAV ("save")  FILE  (DEC
  189.     and  Tenex),  SHR ("share") and LOW FILES (DEC), and EXE
  190.     ("ex'ee") FILE (DEC and Twenex).  Also in this  category
  191.  
  192.  
  193.  
  194.  
  195.  
  196.  
  197.  
  198.  
  199.  
  200.                            - 4 -
  201.  
  202.  
  203.     are  the  input  files to the various flavors of linking
  204.     loaders (LOADER, LINK-10, STINK), called REL FILES.
  205.  
  206. BINARY n. The object code for a program.
  207.  
  208. BIT n. 1. The unit of information; the amount of information
  209.     obtained  by  asking  a  yes-or-no  question.  "Bits" is
  210.     often used simply to mean information, as  in  "Give  me
  211.     bits  about  DPL  replicators."  2.  [By  extension from
  212.     "interrupt bits" on a computer] A  reminder  that  some-
  213.     thing  should  be done or talked about eventually.  Upon
  214.     seeing someone that you haven't talked to for  a  while,
  215.     it's  common  for  one or both to say, "I have a bit set
  216.     for you."
  217.  
  218. BITBLT (bit'blit) 1. v. To perform a complex operation on  a
  219.     large  block  of  bits, usually involving the bits being
  220.     displayed on a bitmapped raster screen.  See BLT.  2. n.
  221.     The operation itself.
  222.  
  223. BIT BUCKET n. 1. A receptacle used to hold the  runoff  from
  224.     the computer's shift registers.  2. Mythical destination
  225.     of deleted files, GC'ed  memory,  and  other  no-longer-
  226.     accessible data.  3. The physical device associated with
  227.     "NUL:".
  228.  
  229. BLETCH [from German "brechen," to vomit] 1. interj. Term  of
  230.     disgust.   2.  BLETCHEROUS: adj. Disgusting in design or
  231.     function.   "This  keyboard  is   bletcherous!"   Usage:
  232.     slightly comic.
  233.  
  234. BLT (blit, very rarely belt)  [based  on  the  PDP-10  block
  235.     transfer  instruction; confusing to users of the PDP-11]
  236.     1. v. To transfer a large contiguous package of informa-
  237.     tion  from  one  place  to  another.  2. THE BIG BLT: n.
  238.     Shuffling operation on the PDP-10 under  some  operating
  239.     systems  that  consumes a significant amount of computer
  240.     time.  3. (usually pronounced B-L-T)  n.  Sandwich  con-
  241.     taining bacon, lettuce, and tomato.
  242.  
  243. BOGOSITY n. The degree to which something is  BOGUS  (q.v.).
  244.     At  CMU,  bogosity is measured with a bogometer; typical
  245.     use: in a seminar, when a speaker says something  bogus,
  246.     a  listener  might raise his hand and say, "My bogometer
  247.     just triggered." The agreed-upon unit of bogosity is the
  248.     microLenat (uL).
  249.  
  250. BOGUS (WPI, Yale, Stanford) adj. 1.  Non-functional.   "Your
  251.     patches  are bogus." 2. Useless.  "OPCON is a bogus pro-
  252.     gram."  3.  False.   "Your  arguments  are  bogus."   4.
  253.     Incorrect.   "That algorithm is bogus." 5. Silly.  "Stop
  254.     writing those bogus sagas." (This  word  seems  to  have
  255.     some,  but  not  all,  of  the  connotations of RANDOM.)
  256.     [Etymological note from Lehman/Reid at CMU: "Bogus"  was
  257.  
  258.  
  259.  
  260.  
  261.  
  262.  
  263.  
  264.  
  265.  
  266.                            - 5 -
  267.  
  268.  
  269.     originally  used  (in  this  sense) at Princeton, in the
  270.     late 60's.  It was  used  not  particularly  in  the  CS
  271.     department, but all over campus.  It came to Yale, where
  272.     one of us (Lehman) was an undergraduate, and (we assume)
  273.     elsewhere  through  the  efforts of Princeton alumni who
  274.     brought the word with them from their  alma  mater.   In
  275.     the  Yale case, the alumnus is Michael Shamos, who was a
  276.     graduate student at Yale and is  now  a  faculty  member
  277.     here.   A  glossary  of bogus words was compiled at Yale
  278.     when the word was first popularized (e.g.,  autobogopho-
  279.     bia: the fear of becoming bogotified).]
  280.  
  281. BOUNCE (Stanford) v. To play volleyball.   "Bounce,  bounce!
  282.     Stop  wasting  time  on  the computer and get out to the
  283.     court!"
  284.  
  285. BRAIN-DAMAGED [generalization of  "Honeywell  Brain  Damage"
  286.     (HBD), a theoretical disease invented to explain certain
  287.     utter cretinisms in Multics] adj. Obviously wrong;  cre-
  288.     tinous; demented.  There is an implication that the per-
  289.     son responsible must have suffered brain damage, because
  290.     he  should  have known better.  Calling something brain-
  291.     damaged is really bad; it also implies it is unusable.
  292.  
  293. BREAK v. 1. To cause to be broken  (in  any  sense).   "Your
  294.     latest  patch to the system broke the TELNET server." 2.
  295.     (of a program) To stop temporarily, so that  it  may  be
  296.     examined  for  debugging  purposes.   The place where it
  297.     stops is a BREAKPOINT.
  298.  
  299. BROKEN adj. 1.  Not  working  properly  (of  programs).   2.
  300.     Behaving  strangely;  especially (of people), exhibiting
  301.     extreme depression.
  302.  
  303. BROKET [by analogy with "bracket:" a "broken bracket"] (pri-
  304.     marily  Stanford)  n.  Either  of the characters "<" and
  305.     ">".  (At MIT, and apparently in The Real  World  (q.v.)
  306.     as well, these are usually called ANGLE BRACKETS.)
  307.  
  308. BUCKY BITS (primarily Stanford) n. The bits produced by  the
  309.     CTRL  and META shift keys on a Stanford (or Knight) key-
  310.     board.  Rumor has it that the idea for  extra  bits  for
  311.     characters  came  from Niklaus Wirth, and that his nick-
  312.     name was "Bucky."
  313.  
  314. DOUBLE BUCKY adj. Using both the CTRL and META  keys.   "The
  315.     command to burn all LEDs is double bucky F."
  316.  
  317. BUG  [from  telephone  terminology,  "bugs  in  a  telephone
  318.     cable," blamed for noisy lines; however, Jean Sammet has
  319.     repeatedly been heard to claim that the use of the  term
  320.     in  CS  comes  from a story concerning actual bugs found
  321.     wedged  in  an  early  malfunctioning  computer]  n.  An
  322.     unwanted  and unintended property of a program.  (People
  323.  
  324.  
  325.  
  326.  
  327.  
  328.  
  329.  
  330.  
  331.  
  332.                            - 6 -
  333.  
  334.  
  335.     can have bugs too (even winners) as in "PHW is  a  super
  336.     winner, but he has some bugs.") See FEATURE.
  337.  
  338. BUM 1. v. To make highly efficient, either in time or space,
  339.     often at the expense of clarity.  The object of the verb
  340.     is usually what was removed ("I  managed  to  bum  three
  341.     more  instructions.")  but  can  be  the  program  being
  342.     changed  ("I  bummed  the  inner  loop  down  to   seven
  343.     microseconds.")  2. n. A small change to an algorithm to
  344.     make it more efficient.
  345.  
  346. BUZZ v. To run in a very tight loop, perhaps without guaran-
  347.     tee of getting out.
  348.  
  349. CANONICAL adj. The usual or  standard  state  or  manner  of
  350.     something.   A  true story:  One Bob Sjoberg, new at the
  351.     MIT AI Lab, expressed some annoyance at the use of  jar-
  352.     gon.  Over his loud objections, we made a point of using
  353.     jargon as much as possible in his presence, and  eventu-
  354.     ally it began to sink in.  Finally, in one conversation,
  355.     he used the  word  "canonical"  in  jargon-like  fashion
  356.     without thinking.
  357.  
  358.             Steele: "Aha!  We've finally got you talking jargon too!"
  359.             Stallman: "What did he say?"
  360.             Steele: "He just used 'canonical' in the canonical way."
  361.  
  362.  
  363. CATATONIA (kat-uh-toe'nee-uh) n. A  condition  of  suspended
  364.     animation in which the system is in a wedged (CATATONIC)
  365.     state.
  366.  
  367. CDR (ku'der) [from LISP] v. With "down,"  to  trace  down  a
  368.     list  of  elements.   "Shall  we  cdr  down the agenda?"
  369.     Usage: silly.
  370.  
  371. CHINE NUAL n. The Lisp Machine Manual, so called because the
  372.     title  is wrapped around the cover so only those letters
  373.     show.
  374.  
  375. CHOMP v. To lose; to chew on something  of  which  more  was
  376.     bitten  off  than one can.  Probably related to gnashing
  377.     of teeth.  See BAGBITER.  A hand gesture commonly accom-
  378.     panies   this,  consisting  of  the  four  fingers  held
  379.     together as if in a  mitten  or  hand  puppet,  and  the
  380.     fingers and thumb open and close rapidly to illustrate a
  381.     biting action.  The gesture alone means CHOMP CHOMP (see
  382.     Verb Doubling).
  383.  
  384. CLOSE n. Abbreviation for "close  (or  right)  parenthesis,"
  385.     used  when  necessary  to eliminate oral ambiguity.  See
  386.     OPEN.
  387.  
  388. COKEBOTTLE  n.  Any  very  unusual  character.   MIT  people
  389.  
  390.  
  391.  
  392.  
  393.  
  394.  
  395.  
  396.  
  397.  
  398.                            - 7 -
  399.  
  400.  
  401.     complain about the "control-meta-cokebottle" commands at
  402.     SAIL, and  SAIL  people  complain  about  the  "altmode-
  403.     altmode-cokebottle" commands at MIT.
  404.  
  405. COM MODE (variant: COMM MODE)  [from  the  ITS  feature  for
  406.     linking  two  or  more  terminals  together so that text
  407.     typed on any is echoed on  all,  providing  a  means  of
  408.     conversation  among  hackers] n. The state a terminal is
  409.     in when linked to another in this way.  Com mode  has  a
  410.     special  set of jargon words, used to save typing, which
  411.     are not used orally:
  412.  
  413.     center; l lw(3.5i).  BCNU    Be seeing you.   BTW     By
  414.     the  way ...  BYE?    T{ Are you ready to unlink?  (This
  415.     is the standard way to end a com mode conversation;  the
  416.     other person types BYE to confirm, or else continues the
  417.     conversation.) T} CUL     See you later.   FOO?    T{  A
  418.     greeting,  also  meaning  R  U THERE?  Often used in the
  419.     case of unexpected links, meaning also "Sorry if I  but-
  420.     ted   in"   (linker)   or  "What's  up?"  (linkee).   T}
  421.     FYI     For your  information...   GA      T{  Go  ahead
  422.     (used when two people have tried to type simultaneously;
  423.     this  cedes  the  right  to  type  to  the  other).   T}
  424.     HELLOP  T{  A  greeting,  also  meaning  R U THERE?  (An
  425.     instance of the "-P"  convention.)  T}  MtFBWY  May  the
  426.     Force  be  with  you.  (From Star Wars.) NIL     No (see
  427.     the main entry for NIL).  OBTW    Oh, by the way ...   R
  428.     U  THERE?      Are  you  there?   SEC     Wait  a second
  429.     (sometimes written SEC...).  T       Yes (see  the  main
  430.     entry for T).  TNX     Thanks.  TNX 1.0E6       Thanks a
  431.     million (humorous).  <double CRLF>   T{ When the  typing
  432.     party  has  finished, he types two CRLF's to signal that
  433.     he is done; this leaves a blank line between  individual
  434.     "speeches"  in the conversation, making it easier to re-
  435.     read the preceding text.  T} <name>: T{  When  three  or
  436.     more  terminals  are  linked, each speech is preceded by
  437.     the typist's login name and a colon  (or  a  hyphen)  to
  438.     indicate  who  is typing.  The login name often is shor-
  439.     tened to a unique prefix (possibly a single letter) dur-
  440.     ing a very long conversation.  T} /\/\/\  The equivalent
  441.     of a giggle.
  442.  
  443.     At Stanford, where the link feature  is  implemented  by
  444.     "talk loops," the term TALK MODE is used in place of COM
  445.     MODE.  Most of the above "sub-jargon" is  used  at  both
  446.     Stanford and MIT.
  447.  
  448. CONNECTOR CONSPIRACY [probably came into prominence with the
  449.     appearance  of the KL-10, none of whose connectors match
  450.     anything else] n. The tendency of manufacturers (or,  by
  451.     extension, programmers or purveyors of anything) to come
  452.     up with new products which don't fit together  with  the
  453.     old  stuff,  thereby making you buy either all new stuff
  454.     or expensive interface devices.
  455.  
  456.  
  457.  
  458.  
  459.  
  460.  
  461.  
  462.  
  463.  
  464.                            - 8 -
  465.  
  466.  
  467. CONS [from LISP] 1. v. To add a new element to a  list.   2.
  468.     CONS  UP: v. To synthesize from smaller pieces: "to cons
  469.     up an example."
  470.  
  471. CRASH 1. n. A sudden, usually drastic failure.   Most  often
  472.     said  of  the system (q.v., definition #1), sometimes of
  473.     magnetic disk drives.  "Three lusers lost their files in
  474.     last night's disk crash." A disk crash which entails the
  475.     read/write heads dropping onto the surface of the  disks
  476.     and  scraping off the oxide may also be referred to as a
  477.     "head crash." 2. v. To fail suddenly.  "Has  the  system
  478.     just  crashed?"  Also  used transitively to indicate the
  479.     cause of the crash (usually a person or  a  program,  or
  480.     both).   "Those idiots playing spacewar crashed the sys-
  481.     tem." Sometimes said of people.  See GRONK OUT.
  482.  
  483. CRETIN 1. n. Congenital loser (q.v.).   2.  CRETINOUS:  adj.
  484.     See  BLETCHEROUS  and  BAGBITING.   Usage:  somewhat ad-
  485.     hominem.
  486.  
  487. CRLF (cur'lif, sometimes crul'lif) n. A carriage return (CR)
  488.     followed by a line feed (LF).  See TERPRI.
  489.  
  490. CROCK [probably from "layman" slang, which in  turn  may  be
  491.     derived  from  "crock of shit"] n. An awkward feature or
  492.     programming technique that ought  to  be  made  cleaner.
  493.     Example:  Using  small integers to represent error codes
  494.     without the program interpreting them to the user  is  a
  495.     crock.   Also,  a  technique  that  works acceptably but
  496.     which is quite prone to  failure  if  disturbed  in  the
  497.     least, for example depending on the machine opcodes hav-
  498.     ing particular bit patterns so that you can use instruc-
  499.     tions  as  data  words too; a tightly woven, almost com-
  500.     pletely unmodifiable structure.
  501.  
  502. CRUFTY [from "cruddy"] adj. 1. Poorly built, possibly overly
  503.     complex.   "This  is  standard old crufty DEC software."
  504.     Hence CRUFT, n. shoddy  construction.   Also  CRUFT,  v.
  505.     [from  hand cruft, pun on hand craft] to write assembler
  506.     code for something normally (and better) done by a  com-
  507.     piler.   2.  Unpleasant,  especially to the touch, often
  508.     with encrusted junk.  Like spilled coffee  smeared  with
  509.     peanut  butter  and  catsup.  Hence CRUFT, n. disgusting
  510.     mess.  3. Generally unpleasant.  CRUFTY or CRUFTIE n.  A
  511.     small  crufty object (see FROB); often one which doesn't
  512.     fit well into the scheme of things.   "A  LISP  property
  513.     list  is  a  good  place  to  store crufties (or, random
  514.     cruft)." [Note:  Does CRUFT have anything to do with the
  515.     Cruft Lab at Harvard?  I don't know, though I was a Har-
  516.     vard student. --GLS]
  517.  
  518. CRUNCH v. 1. To process, usually in a time-consuming or com-
  519.     plicated way.  Connotes an essentially trivial operation
  520.     which is nonetheless painful to perform.  The  pain  may
  521.  
  522.  
  523.  
  524.  
  525.  
  526.  
  527.  
  528.  
  529.  
  530.                            - 9 -
  531.  
  532.  
  533.     be due to the triviality being imbedded in a loop from 1
  534.     to  1000000000.   "FORTRAN  programs  do  mostly  number
  535.     crunching." 2. To reduce the size of a file by a compli-
  536.     cated scheme that produces bit configurations completely
  537.     unrelated  to  the  original  data, such as by a Huffman
  538.     code.  (The file ends up looking like a  paper  document
  539.     would if somebody crunched the paper into a wad.)  Since
  540.     such compression usually takes  more  computations  than
  541.     simpler  methods  such  as  counting repeated characters
  542.     (such as spaces) the term is doubly appropriate.   (This
  543.     meaning  is  usually  used  in  the  construction  "file
  544.     crunch(ing)"   to   distinguish    it    from    "number
  545.     crunch(ing).")  3. n. The character "#".  Usage: used at
  546.     Xerox and CMU, among other places.  Other names for  "#"
  547.     include  SHARP,  NUMBER,  HASH, PIG-PEN, POUND-SIGN, and
  548.     MESH.  GLS adds: I recall reading somewhere that most of
  549.     these  are  names for the # symbol IN CONTEXT.  The name
  550.     for the sign itself is "octothorp."
  551.  
  552. CTY (city) n. The  terminal  physically  associated  with  a
  553.     computer's operating console.
  554.  
  555. CUSPY [from the DEC acronym CUSP, for Commonly  Used  System
  556.     Program,  i.e.,  a  utility program used by many people]
  557.     (WPI) adj. 1. (of a program) Well-written.  2. Function-
  558.     ally  excellent.   A  program  which  performs  well and
  559.     interfaces well to users is cuspy.  See RUDE.
  560.  
  561. DAEMON (day'mun, dee'mun) [archaic form  of  "demon,"  which
  562.     has slightly different connotations (q.v.)] n. A program
  563.     which is not invoked explicitly, but which lies  dormant
  564.     waiting  for  some  condition(s)  to occur.  The idea is
  565.     that the perpetrator of the condition need not be  aware
  566.     that  a  daemon  is lurking (though often a program will
  567.     commit an action only because  it  knows  that  it  will
  568.     implicitly  invoke  a  daemon).   For example, writing a
  569.     file on the lpt  spooler's  directory  will  invoke  the
  570.     spooling  daemon,  which prints the file.  The advantage
  571.     is that programs which  want  (in  this  example)  files
  572.     printed  need  not  compete for access to the lpt.  They
  573.     simply enter their implicit requests and let the  daemon
  574.     decide  what  to  do  with  them.   Daemons  are usually
  575.     spawned automatically by the system, and may either live
  576.     forever  or  be regenerated at intervals.  Usage: DAEMON
  577.     and DEMON (q.v.) are  often  used  interchangeably,  but
  578.     seem  to  have distinct connotations.  DAEMON was intro-
  579.     duced to computing by CTSS  people  (who  pronounced  it
  580.     dee'mon)  and  used  it to refer to what is now called a
  581.     DRAGON or PHANTOM (q.v.).  The meaning and pronunciation
  582.     have  drifted,  and  we  think  this  glossary  reflects
  583.     current usage.
  584.  
  585. DAY MODE See PHASE (of people).
  586.  
  587.  
  588.  
  589.  
  590.  
  591.  
  592.  
  593.  
  594.  
  595.  
  596.                            - 10 -
  597.  
  598.  
  599. DEADLOCK n. A situation wherein two or  more  processes  are
  600.     unable to proceed because each is waiting for another to
  601.     do something.  A common example is a program communicat-
  602.     ing  to  a PTY or STY, which may find itself waiting for
  603.     output from the PTY/STY before sending anything more  to
  604.     it,  while  the  PTY/STY  is  similarly waiting for more
  605.     input from the  controlling  program  before  outputting
  606.     anything.  (This particular flavor of deadlock is called
  607.     "starvation." Another common flavor  is  "constipation,"
  608.     where each process is trying to send stuff to the other,
  609.     but all buffers are full because nobody is reading  any-
  610.     thing.)  See DEADLY EMBRACE.
  611.  
  612. DEADLY EMBRACE n. Same as DEADLOCK  (q.v.),  though  usually
  613.     used  only  when  exactly  two  processes  are involved.
  614.     DEADLY EMBRACE is  the  more  popular  term  in  Europe;
  615.     DEADLOCK in the United States.
  616.  
  617. DEMENTED adj. Yet another term of disgust used to describe a
  618.     program.   The connotation in this case is that the pro-
  619.     gram works as designed, but  the  design  is  bad.   For
  620.     example, a program that generates large numbers of mean-
  621.     ingless error messages implying it is on  the  point  of
  622.     imminent collapse.
  623.  
  624. DEMON (dee'mun) n. A  portion  of  a  program  that  is  not
  625.     invoked  explicitly,  but which lies dormant waiting for
  626.     some condition(s) to occur.  See DAEMON.   The  distinc-
  627.     tion  is that demons are usually processes within a pro-
  628.     gram, while daemons are usually programs running  on  an
  629.     operating  system.  Demons are particularly common in AI
  630.     programs.  For example, a knowledge manipulation program
  631.     might  implement  inference rules as demons.  Whenever a
  632.     new piece of knowledge was added, various  demons  would
  633.     activate  (which  demons depends on the particular piece
  634.     of data) and would create additional pieces of knowledge
  635.     by applying their respective inference rules to the ori-
  636.     ginal piece.  These new pieces could  in  turn  activate
  637.     more  demons  as  the  inferences  filtered down through
  638.     chains of logic.  Meanwhile the main program could  con-
  639.     tinue with whatever its primary task was.
  640.  
  641. DIABLO (dee-ah'blow) [from the Diablo  printer]  1.  n.  Any
  642.     letter-quality   printing  device.   2.  v.  To  produce
  643.     letter-quality output from such a device.
  644.  
  645. DIDDLE v. To work with in a not particularly serious manner.
  646.     "I  diddled  with  a copy of ADVENT so it didn't double-
  647.     space all the time." "Let's diddle this  piece  of  code
  648.     and  see  if the problem goes away." See TWEAK and TWID-
  649.     DLE.
  650.  
  651. DIKE [from "diagonal cutters"] v. To remove a module or dis-
  652.     able it.  "When in doubt, dike it out."
  653.  
  654.  
  655.  
  656.  
  657.  
  658.  
  659.  
  660.  
  661.  
  662.                            - 11 -
  663.  
  664.  
  665. DMP (dump) See BIN.
  666.  
  667. DO PROTOCOL [from network protocol programming] v.  To  per-
  668.     form an interaction with somebody or something that fol-
  669.     lows a clearly defined procedure.  For  example,  "Let's
  670.     do protocol with the check" at a restaurant means to ask
  671.     the waitress  for  the  check,  calculate  the  tip  and
  672.     everybody's share, generate change as necessary, and pay
  673.     the bill.
  674.  
  675. DOWN 1. adj. Not working.  "The up escalator  is  down."  2.
  676.     TAKE  DOWN,  BRING  DOWN:  v. To deactivate, usually for
  677.     repair work.  See UP.
  678.  
  679. DPB (duh-pib') [from the PDP-10 instruction set] v. To  plop
  680.     something down in the middle.
  681.  
  682. DRAGON n. (MIT) A program  similar  to  a  "daemon"  (q.v.),
  683.     except  that  it  is  not invoked at all, but is instead
  684.     used by the system to perform various  secondary  tasks.
  685.     A  typical example would be an accounting program, which
  686.     keeps track of  who  is  logged  in,  accumulates  load-
  687.     average  statistics, etc.  At MIT, all free TV's display
  688.     a list of people logged in, where they are, what they're
  689.     running,  etc. along with some random picture (such as a
  690.     unicorn, Snoopy, or the Enterprise) which  is  generated
  691.     by the "NAME DRAGON." See PHANTOM.
  692.  
  693. DWIM [Do What I Mean] 1. adj. Able to guess, sometimes  even
  694.     correctly,  what  result was intended when provided with
  695.     bogus input.  Often  suggested  in  jest  as  a  desired
  696.     feature  for  a  complex  program.  A related term, more
  697.     often seen as a verb, is DTRT (Do The Right Thing).   2.
  698.     n.  The  INTERLISP  function that attempts to accomplish
  699.     this feat by correcting many of the more common  errors.
  700.     See HAIRY.
  701.  
  702. ENGLISH n. The source code for a program, which  may  be  in
  703.     any  language,  as  opposed  to BINARY.  Usage: slightly
  704.     obsolete, used mostly by old-time hackers, though recog-
  705.     nizable  in  context.  At MIT, directory SYSENG is where
  706.     the "English" for system programs is kept,  and  SYSBIN,
  707.     the  binaries.   SAIL has many such directories, but the
  708.     canonical one is [CSP,SYS].
  709.  
  710. EPSILON [from standard mathematical  notation  for  a  small
  711.     quantity]  1.   n.  A  small quantity of anything.  "The
  712.     cost is epsilon." 2. adj.  Very small, negligible;  less
  713.     than  marginal  (q.v.).   "We  can  get this feature for
  714.     epsilon cost." 3. WITHIN EPSILON OF: Close enough to  be
  715.     indistinguishable for all practical purposes.
  716.  
  717. EXCH (ex'chuh, ekstch) [from the PDP-10 instruction set]  v.
  718.     To exchange two things, each for the other.
  719.  
  720.  
  721.  
  722.  
  723.  
  724.  
  725.  
  726.  
  727.  
  728.                            - 12 -
  729.  
  730.  
  731. EXCL (eks'cul) n. Abbreviation for "exclamation point."  See
  732.     BANG, SHRIEK, WOW.
  733.  
  734. EXE (ex'ee)  See BIN.
  735.  
  736. FAULTY adj. Same denotation as  "bagbiting,"  "bletcherous,"
  737.     "losing," q.v., but the connotation is much milder.
  738.  
  739. FEATURE n. 1. A surprising property of a program.  Occasion-
  740.     ally documented.  To call a property a feature sometimes
  741.     means the author of the program  did  not  consider  the
  742.     particular  case,  and  the program makes an unexpected,
  743.     although not strictly speaking  an  incorrect  response.
  744.     See  BUG.   "That's  not a bug, that's a feature!" A bug
  745.     can be changed to a feature by  documenting  it.   2.  A
  746.     well-known  and beloved property; a facility.  Sometimes
  747.     features are planned, but are called crocks  by  others.
  748.     An  approximately  correct spectrum (these terms are all
  749.     used to describe programs or  portions  thereof,  except
  750.     for the first two, which are included for completeness):
  751.         CRASH  STOPPAGE  BUG  SCREW  LOSS  MISFEATURE  CROCK
  752.         KLUGE  HACK  WIN  FEATURE  PERFECTION
  753.     (The last is never actually attained.)
  754.  
  755. FEEP 1. n. The soft bell of a display terminal (except for a
  756.     VT-52!);  a  beep.  2. v. To cause the display to make a
  757.     feep sound.  TTY's do not have feeps.  Alternate  forms:
  758.     BEEP,  BLEEP,  or  just about anything suitably onomato-
  759.     poeic.  The term BREEDLE is  sometimes  heard  at  SAIL,
  760.     where  the terminal bleepers are not particularly "soft"
  761.     (they sound more like the musical equivalent of sticking
  762.     out  one's  tongue).   The  "feeper" on a VT-52 has been
  763.     compared to the sound  of  a  '52  Chevy  stripping  its
  764.     gears.
  765.  
  766. FENCEPOST ERROR n. The discrete  equivalent  of  a  boundary
  767.     condition.   Often  exhibited  in  programs by iterative
  768.     loops.  From the following  problem:  "If  you  build  a
  769.     fence  100 feet long with posts ten feet apart, how many
  770.     posts do you need?" (Either 9 or 11 is a  better  answer
  771.     than the obvious 10.)
  772.  
  773. FINE (WPI) adj. Good, but not good enough to be CUSPY.  [The
  774.     word  FINE is used elsewhere, of course, but without the
  775.     implicit comparison  to  the  higher  level  implied  by
  776.     CUSPY.]
  777.  
  778. FLAG DAY [from a bit of Multics history involving  a  change
  779.     in the ASCII character set originally scheduled for June
  780.     14, 1966] n. A software change which is neither  forward
  781.     nor backward compatible, and which is costly to make and
  782.     costly to revert.  "Can we install that without  causing
  783.     a flag day for all users?"
  784.  
  785.  
  786.  
  787.  
  788.  
  789.  
  790.  
  791.  
  792.  
  793.  
  794.                            - 13 -
  795.  
  796.  
  797. FLAKEY adj. Subject to frequent lossages.  See LOSSAGE.
  798.  
  799. FLAME uninteresting subject or with  a  patently  ridiculous
  800.     attitude.  FLAME ON: v. To continue to flame.  See RAVE.
  801.     This punning reference to Marvel comics' Human Torch has
  802.     been  lost  as recent usage completes the circle: "Flame
  803.     on" now usually means "beginning of flame."
  804.  
  805. FLAP v.  To  unload  a  DECtape  (so  it  goes  flap,  flap,
  806.     flap...).   Old hackers at MIT tell of the days when the
  807.     disk was device 0  and  microtapes  were  1,  2,...  and
  808.     attempting  to flap device 0 would instead start a motor
  809.     banging inside a cabinet near the disk!
  810.  
  811. FLAVOR n. 1. Variety, type, kind.  "DDT commands come in two
  812.     flavors."  See  VANILLA.   2.  The  attribute of causing
  813.     something to  be  FLAVORFUL.   "This  convention  yields
  814.     additional  flavor  by  allowing  one to... ." 3. On the
  815.     LispMachine,  an  object-oriented   programming   system
  816.     ("flavors"); each class of object is a flavor.
  817.  
  818. FLAVORFUL adj. Aesthetically pleasing.  See RANDOM and  LOS-
  819.     ING for antonyms.  See also the entry for TASTE.
  820.  
  821. FLUSH v. 1. To delete something, usually superfluous.   "All
  822.     that  nonsense has been flushed." Standard ITS terminol-
  823.     ogy for aborting an output operation.  2.  To  leave  at
  824.     the  end  of  a  day's work (as opposed to leaving for a
  825.     meal).  "I'm going to flush now." "Time to flush." 3. To
  826.     exclude someone from an activity.
  827.  
  828. FOO 1. [from Yiddish  "feh"  or  the  Anglo-Saxon  "fooey!"]
  829.     interj.  Term  of  disgust.   2.  [from FUBAR (Fucked Up
  830.     Beyond  All  Recognition),  from  WWII,  often  seen  as
  831.     FOOBAR]  Name used for temporary programs, or samples of
  832.     three-letter names.  Other similar words  are  BAR,  BAZ
  833.     (Stanford  corruption  of  BAR),  and rarely RAG.  These
  834.     have been used in Pogo as well.  3. Used very  generally
  835.     as a sample name for absolutely anything.  The old "Smo-
  836.     key Stover" comic strips often included the word FOO, in
  837.     particular  on  license  plates  of cars.  MOBY FOO: See
  838.     MOBY.
  839.  
  840. FRIED adj. 1. Non-working due  to  hardware  failure;  burnt
  841.     out.   2.  Of  people,  exhausted.  Said particularly of
  842.     those who continue to work in such a state.  Often  used
  843.     as  an  explanation  or  excuse.  "Yeah, I know that fix
  844.     destroyed the file system, but I was fried when I put it
  845.     in."
  846.  
  847. FROB 1. n. (MIT)  The  official  Tech  Model  Railroad  Club
  848.     definition  is  "FROB = protruding arm or trunnion," and
  849.     by metaphoric extension any somewhat small  thing.   See
  850.     FROBNITZ.  2. v. Abbreviated form of FROBNICATE.
  851.  
  852.  
  853.  
  854.  
  855.  
  856.  
  857.  
  858.  
  859.  
  860.                            - 14 -
  861.  
  862.  
  863. FROBNICATE v. To manipulate or adjust,  to  tweak.   Derived
  864.     from  FROBNITZ  (q.v.).   Usually  abbreviated  to FROB.
  865.     Thus one has the saying "to frob a frob." See TWEAK  and
  866.     TWIDDLE.  Usage: FROB, TWIDDLE, and TWEAK sometimes con-
  867.     note points along a continuum.   FROB  connotes  aimless
  868.     manipulation; TWIDDLE connotes gross manipulation, often
  869.     a coarse search for a  proper  setting;  TWEAK  connotes
  870.     fine-tuning.   If someone is turning a knob on an oscil-
  871.     loscope, then if he's carefully adjusting it he is prob-
  872.     ably  tweaking  it; if he is just turning it but looking
  873.     at the screen he is probably twiddling it; but  if  he's
  874.     just  doing it because turning a knob is fun, he's frob-
  875.     bing it.
  876.  
  877. FROBNITZ, pl. FROBNITZEM (frob'nitsm) n. An unspecified phy-
  878.     sical object, a widget.  Also refers to electronic black
  879.     boxes.  This rare form is usually abbreviated to  FROTZ,
  880.     or  more commonly to FROB.  Also used are FROBNULE, FRO-
  881.     BULE, and FROBNODULE.  Starting perhaps in 1979, FROBBOZ
  882.     (fruh-bahz'), pl. FROBBOTZIM, has also become very popu-
  883.     lar, largely due  to  its  exposure  via  the  Adventure
  884.     spin-off  called  Zork  (Dungeon).   These  can  also be
  885.     applied to non-physical objects,  such  as  data  struc-
  886.     tures.
  887.  
  888. FROG (variant: PHROG) 1. interj. Term of disgust (we seem to
  889.     have  a  lot of them).  2. Used as a name for just about
  890.     anything.  See FOO.  3. n. Of things, a crock.  Of  peo-
  891.     ple,  somewhere  inbetween a turkey and a toad.  4. Jake
  892.     Brown (FRG@SAIL).  5. FROGGY: adj. Similar to  BAGBITING
  893.     (q.v.), but milder.  "This froggy program is taking for-
  894.     ever to run!"
  895.  
  896. FROTZ 1. n. See FROBNITZ.  2. MUMBLE FROTZ: An  interjection
  897.     of very mild disgust.
  898.  
  899. FRY v. 1.  To  fail.   Said  especially  of  smoke-producing
  900.     hardware  failures.   2.  More generally, to become non-
  901.     working.   Usage:  never  said  of  software,  only   of
  902.     hardware and humans.  See FRIED.
  903.  
  904. FTP (spelled out, NOT pronounced "fittip") 1.  n.  The  File
  905.     Transfer Protocol for transmitting files between systems
  906.     on the ARPAnet.  2.  v. To transfer  a  file  using  the
  907.     File  Transfer Program.  "Lemme get this copy of Wuther-
  908.     ing Heights FTP'd from SAIL."
  909.  
  910. FUDGE 1. v. To  perform  in  an  incomplete  but  marginally
  911.     acceptable way, particularly with respect to the writing
  912.     of a program.  "I didn't feel like  going  through  that
  913.     pain and suffering, so I fudged it." 2. n. The resulting
  914.     code.
  915.  
  916. FUDGE FACTOR n. A value or parameter that is varied in an ad
  917.  
  918.  
  919.  
  920.  
  921.  
  922.  
  923.  
  924.  
  925.  
  926.                            - 15 -
  927.  
  928.  
  929.     hoc  way  to  produce  the  desired  result.   The terms
  930.     "tolerance" and "slop" are also used, though these  usu-
  931.     ally indicate a one-sided leeway, such as a buffer which
  932.     is made larger than necessary  because  one  isn't  sure
  933.     exactly  how  large  it needs to be, and it is better to
  934.     waste a little space than to  lose  completely  for  not
  935.     having  enough.   A fudge factor, on the other hand, can
  936.     often be tweaked in more than one direction.  An example
  937.     might  be  the  coefficients  of  an equation, where the
  938.     coefficients are varied in an attempt to make the  equa-
  939.     tion fit certain criteria.
  940.  
  941. GABRIEL [for Dick Gabriel, SAIL volleyball  fanatic]  n.  An
  942.     unnecessary  (in  the  opinion of the opponent) stalling
  943.     tactic, e.g., tying one's shoelaces or hair  repeatedly,
  944.     asking  the time, etc.  Also used to refer to the perpe-
  945.     trator of such  tactics.   Also,  "pulling  a  Gabriel,"
  946.     "Gabriel mode."
  947.  
  948. GARBAGE COLLECT v., GARBAGE COLLECTION n. See GC.
  949.  
  950. GARPLY n. (Stanford) Another meta-word  popular  among  SAIL
  951.     hackers.
  952.  
  953. GAS [as in "gas chamber"] interj. 1. A term of  disgust  and
  954.     hatred,  implying  that  gas should be dispensed in gen-
  955.     erous quantities, thereby exterminating  the  source  of
  956.     irritation.  "Some loser just reloaded the system for no
  957.     reason!  Gas!" 2. A  term  suggesting  that  someone  or
  958.     something  ought  to  be  flushed  out  of  mercy.  "The
  959.     system's wedging every few minutes.  Gas!" 3.  v.  FLUSH
  960.     (q.v.).   "You  should gas that old crufty software." 4.
  961.     GASEOUS adj. Deserving of  being  gassed.   Usage:  pri-
  962.     marily used by Geoff Goodfellow at SRI, but spreading.
  963.  
  964. GC [from LISP terminology] 1. v. To clean up and throw  away
  965.     useless  things.   "I  think  I'll GC the top of my desk
  966.     today." 2. To recycle, reclaim, or put to  another  use.
  967.     3.  To  forget.   The  implication is often that one has
  968.     done so deliberately.  4. n. An instantiation of the  GC
  969.     process.
  970.  
  971. GEDANKEN [from Einstein's term "gedanken-experimenten," such
  972.     as  the  standard  proof that E=mc^2] adj. An AI project
  973.     which is written up in grand detail without  ever  being
  974.     implemented to any great extent.  Usually perpetrated by
  975.     people who aren't very good hackers or find  programming
  976.     distasteful  or  are just in a hurry.  A gedanken thesis
  977.     is usually marked by an obvious lack of intuition  about
  978.     what is programmable and what is not and about what does
  979.     and does not  constitute  a  clear  specification  of  a
  980.     program-related concept such as an algorithm.
  981.  
  982. GLASS TTY n. A terminal  which  has  a  display  screen  but
  983.  
  984.  
  985.  
  986.  
  987.  
  988.  
  989.  
  990.  
  991.  
  992.                            - 16 -
  993.  
  994.  
  995.     which,  because  of  hardware  or  software limitations,
  996.     behaves like a teletype or other printing terminal.   An
  997.     example  is the ADM-3 (without cursor control).  A glass
  998.     tty can't do neat display hacks, and you can't save  the
  999.     output either.
  1000.  
  1001. GLITCH [from the Yiddish "glitshen," to slide] 1. n. A  sud-
  1002.     den interruption in electric service, sanity, or program
  1003.     function.  Sometimes recoverable.  2.  v.  To  commit  a
  1004.     glitch.   See  GRITCH.   3.  v.  (Stanford)  To scroll a
  1005.     display screen.
  1006.  
  1007. GLORK 1. interj. Term of mild surprise, usually tinged  with
  1008.     outrage, as when one attempts to save the results of two
  1009.     hours of editing and finds  that  the  system  has  just
  1010.     crashed.   2.  Used  as  a name for just about anything.
  1011.     See FOO.  3. v. Similar to GLITCH  (q.v.),  but  usually
  1012.     used reflexively.  "My program just glorked itself."
  1013.  
  1014. GOBBLE v. To consume or to obtain.  GOBBLE UP tends to imply
  1015.     "consume,"  while  GOBBLE  DOWN tends to imply "obtain."
  1016.     "The output spy gobbles characters out of a  TTY  output
  1017.     buffer."  "I  guess I'll gobble down a copy of the docu-
  1018.     mentation tomorrow." See SNARF.
  1019.  
  1020. GORP (CMU) [perhaps from the generic term for dried  hiker's
  1021.     food,  stemming  from  the acronym "Good Old Raisins and
  1022.     Peanuts"] Another metasyntactic variable, like  FOO  and
  1023.     BAR.
  1024.  
  1025. GRIND v. 1. (primarily MIT) To format code, especially  LISP
  1026.     code,  by  indenting  lines  so  that  it  looks pretty.
  1027.     Hence, PRETTY PRINT, the generic term  for  such  opera-
  1028.     tions.   2.  To  run  seemingly interminably, performing
  1029.     some tedious and inherently useless  task.   Similar  to
  1030.     CRUNCH.
  1031.  
  1032. GRITCH 1. n. A complaint (often caused by a GLITCH  (q.v.)).
  1033.     2. v. To complain.  Often verb-doubled: "Gritch gritch."
  1034.     3. Glitch.
  1035.  
  1036. GROK [from the novel _S_t_r_a_n_g_e_r _i_n _a _S_t_r_a_n_g_e _L_a_n_d,  by  Robert
  1037.     Heinlein, where it is a Martian word meaning roughly "to
  1038.     be one with"] v. To  understand,  usually  in  a  global
  1039.     sense.
  1040.  
  1041. GRONK [popularized by the cartoon  strip  "B.C."  by  Johnny
  1042.     Hart,  but  the  word apparently predates that] v. 1. To
  1043.     clear the state of a wedged device and restart it.  More
  1044.     severe  than "to frob" (q.v.).  2. To break.  "The tele-
  1045.     type scanner was gronked, so we took the  system  down."
  1046.     3.  GRONKED:  adj.  Of  people, the condition of feeling
  1047.     very tired or sick.  4. GRONK OUT: v. To cease function-
  1048.     ing.   Of  people, to go home and go to sleep.  "I guess
  1049.  
  1050.  
  1051.  
  1052.  
  1053.  
  1054.  
  1055.  
  1056.  
  1057.  
  1058.                            - 17 -
  1059.  
  1060.  
  1061.     I'll gronk out now; see you all tomorrow."
  1062.  
  1063. GROVEL v. To work interminably  and  without  apparent  pro-
  1064.     gress.   Often used with "over." "The compiler grovelled
  1065.     over my code." Compare GRIND and CRUNCH.  Emphatic form:
  1066.     GROVEL OBSCENELY.
  1067.  
  1068. GRUNGY adj. Incredibly dirty or grubby.  Anything which  has
  1069.     been  washed  within the last year is not really grungy.
  1070.     Also used metaphorically;  hence  some  programs  (espe-
  1071.     cially crocks) can be described as grungy.
  1072.  
  1073. GUBBISH [a portmanteau of "garbage" and "rubbish?"] n.  Gar-
  1074.     bage; crap; nonsense.  "What is all this gubbish?"
  1075.  
  1076. GUN [from the GUN command on ITS] v. To forcibly terminate a
  1077.     program or job (computer, not career).  "Some idiot left
  1078.     a background process running soaking up half the cycles,
  1079.     so I gunned it."
  1080.  
  1081. HACK n. 1. Originally a quick  job  that  produces  what  is
  1082.     needed,  but  not  well.  2. The result of that job.  3.
  1083.     NEAT HACK: A clever technique.  Also, a brilliant  prac-
  1084.     tical  joke,  where  neatness is correlated with clever-
  1085.     ness, harmlessness, and surprise  value.   Example:  the
  1086.     Caltech  Rose  Bowl  card display switch circa 1961.  4.
  1087.     REAL HACK: A crock (occasionally affectionate).   v.  5.
  1088.     With  "together," to throw something together so it will
  1089.     work.  6. To bear emotionally or physically.   "I  can't
  1090.     hack  this  heat!" 7.  To work on something (typically a
  1091.     program).  In specific sense: "What are you doing?" "I'm
  1092.     hacking  TECO." In general sense: "What do you do around
  1093.     here?" "I hack TECO." (The former is time-immediate, the
  1094.     latter  time-extended.)   More  generally, "I hack x" is
  1095.     roughly equivalent to "x is my bag." "I hack solid-state
  1096.     physics."  8.  To pull a prank on.  See definition 3 and
  1097.     HACKER (def #6).  9. v.i. To waste time (as  opposed  to
  1098.     TOOL).  "Whatcha up to?" "Oh, just hacking." 10. HACK UP
  1099.     (ON): To hack, but generally implies that the result  is
  1100.     meanings  1-2.   11. HACK VALUE: Term used as the reason
  1101.     or motivation for expending effort  toward  a  seemingly
  1102.     useless goal, the point being that the accomplished goal
  1103.     is a hack.  For example, MacLISP has code  to  read  and
  1104.     print  roman  numerals,  which  was installed purely for
  1105.     hack value.  HAPPY HACKING: A farewell.  HOW'S HACKING?:
  1106.     A  friendly  greeting among hackers.  HACK HACK: A some-
  1107.     what pointless but friendly comment,  often  used  as  a
  1108.     temporary  farewell.  [The word HACK doesn't really have
  1109.     69 different meanings.  In fact, HACK has only one mean-
  1110.     ing,  an  extremely subtle and profound one which defies
  1111.     articulation.  Which connotation a given HACK-token  has
  1112.     depends  in  similarly  profound  ways  on  the context.
  1113.     Similar comments apply to a couple other  hacker  jargon
  1114.     items, most notably RANDOM. --Agre]
  1115.  
  1116.  
  1117.  
  1118.  
  1119.  
  1120.  
  1121.  
  1122.  
  1123.  
  1124.                            - 18 -
  1125.  
  1126.  
  1127. HACKER [originally, someone who makes furniture with an axe]
  1128.     n.  1.  A person who enjoys learning the details of pro-
  1129.     gramming systems and how to stretch their  capabilities,
  1130.     as  opposed  to  most users who prefer to learn only the
  1131.     minimum necessary.  2.  One  who  programs  enthusiasti-
  1132.     cally, or who enjoys programming rather than just theor-
  1133.     izing about programming.  3. A person capable of  appre-
  1134.     ciating  hack  value (q.v.).  4. A person who is good at
  1135.     programming quickly.  Not everything a  hacker  produces
  1136.     is a hack.  5. An expert at a particular program, or one
  1137.     who frequently does work using it or on it; example:  "A
  1138.     SAIL  hacker."  (Definitions  1 to 5 are correlated, and
  1139.     people who fit  them  congregate.)  6.  A  malicious  or
  1140.     inquisitive meddler who tries to discover information by
  1141.     poking  around.   Hence  "password   hacker,"   "network
  1142.     hacker."
  1143.  
  1144. HACKISH adj. Being or involving a hack.  HACKISHNESS n.
  1145.  
  1146. HAIR  n.  The  complications  which  make  something  hairy.
  1147.     "Decoding  TECO  commands  requires  a certain amount of
  1148.     hair." Often seen in the  phrase  INFINITE  HAIR,  which
  1149.     connotes extreme complexity.
  1150.  
  1151. HAIRY adj.  1.  Overly  complicated.   "DWIM  is  incredibly
  1152.     hairy."   2.   Incomprehensible.   "DWIM  is  incredibly
  1153.     hairy." 3. Of people, high-powered, authoritative, rare,
  1154.     expert, and/or incomprehensible.  Hard to explain except
  1155.     in context: "He knows this hairy lawyer who says there's
  1156.     nothing to worry about."
  1157.  
  1158. HAKMEM n. MIT AI Memo 239 (February 1972).  A collection  of
  1159.     neat  mathematical  and programming hacks contributed by
  1160.     many people at MIT and elsewhere.
  1161.  
  1162. HANDWAVE 1. v. To gloss over a complex point; to distract  a
  1163.     listener;  to  support a (possibly actually valid) point
  1164.     with blatantly faulty logic.  2. n. The act of  handwav-
  1165.     ing.   "Boy,  what  a handwave!" The use of this word is
  1166.     often accompanied by gestures: both hands up, palms for-
  1167.     ward, swinging the hands in a vertical plane pivoting at
  1168.     the elbows and/or shoulders (depending on the  magnitude
  1169.     of  the  handwave);  alternatively, holding the forearms
  1170.     still while rotating the hands at the wrist to make them
  1171.     flutter.   In context, the gestures alone can suffice as
  1172.     a remark.
  1173.  
  1174. HARDWARILY adv. In a way pertaining to hardware.  "The  sys-
  1175.     tem  is hardwarily unreliable." The adjective "hardwary"
  1176.     is NOT used.  See SOFTWARILY.
  1177.  
  1178. HELLO WALL See WALL.
  1179.  
  1180. HIRSUTE Occasionally used humorously as a synonym for HAIRY.
  1181.  
  1182.  
  1183.  
  1184.  
  1185.  
  1186.  
  1187.  
  1188.  
  1189.  
  1190.                            - 19 -
  1191.  
  1192.  
  1193. HOOK n. An extraneous piece of software or hardware included
  1194.     in  order  to simplify later additions or debug options.
  1195.     For instance, a program might execute a location that is
  1196.     normally a JFCL, but by changing the JFCL to a PUSHJ one
  1197.     can insert a debugging routine at that point.
  1198.  
  1199. HUMONGOUS, HUMUNGOUS See HUNGUS.
  1200.  
  1201. HUNGUS  (hung'ghis)  [perhaps  related  to   current   slang
  1202.     "humongous;"   which  one  came  first  (if  either)  is
  1203.     unclear] adj.  Large,  unwieldy,  usually  unmanageable.
  1204.     "TCP  is  a hungus piece of code." "This is a hungus set
  1205.     of modifications."
  1206.  
  1207. IMPCOM See TELNET.
  1208.  
  1209. INFINITE adj. Consisting  of  a  large  number  of  objects;
  1210.     extreme.   Used  very  loosely as in: "This program pro-
  1211.     duces infinite garbage."
  1212.  
  1213. IRP (erp) [from the MIDAS pseudo-op which generates a  block
  1214.     of  code  repeatedly, substituting in various places the
  1215.     car and/or cdr of the list(s) supplied at the IRP] v. To
  1216.     perform  a  series of tasks repeatedly with a minor sub-
  1217.     stitution each time through.  "I  guess  I'll  IRP  over
  1218.     these  homework  papers  so  I can give them some random
  1219.     grade for this semester."
  1220.  
  1221. JFCL (djif'kl or dja-fik'l) [based on the PDP-10 instruction
  1222.     that  acts  as a fast no-op] v. To cancel or annul some-
  1223.     thing.  "Why don't you  jfcl  that  out?"  [The  license
  1224.     plate on Geoff Goodfellow's BMW is JFCL.]
  1225.  
  1226. JIFFY n. 1. Interval of CPU time, commonly 1/60 second or  1
  1227.     millisecond.   2.  Indeterminate time from a few seconds
  1228.     to forever.  "I'll do it in a jiffy" means certainly not
  1229.     now and possibly never.
  1230.  
  1231. JOCK n. Programmer who is characterized by large  and  some-
  1232.     what  brute  force  programs.   The term is particularly
  1233.     well-suited for systems programmers.
  1234.  
  1235. J. RANDOM See RANDOM.
  1236.  
  1237. JRST (jerst) [based on the PDP-10 jump  instruction]  v.  To
  1238.     suddenly change subjects.  Usage: rather rare.  "Jack be
  1239.     nimble, Jack be quick; Jack jrst over the candle stick."
  1240.  
  1241. JSYS (jay'sis), pl. JSI (jay'sigh) [Jump to SYStem] See UUO.
  1242.  
  1243. KLUGE (kloodj) alt. KLUDGE [from the German "kluge," clever]
  1244.     n.  1.  A  Rube Goldberg device in hardware or software.
  1245.     2. A clever programming trick intended to solve  a  par-
  1246.     ticular  nasty  case  in  an  efficient,  if  not clear,
  1247.  
  1248.  
  1249.  
  1250.  
  1251.  
  1252.  
  1253.  
  1254.  
  1255.  
  1256.                            - 20 -
  1257.  
  1258.  
  1259.     manner.  Often used to repair  bugs.   Often  verges  on
  1260.     being  a  crock.   3. Something that works for the wrong
  1261.     reason.  4. v. To insert a kluge into a program.   "I've
  1262.     kluged  this  routine  to get around that weird bug, but
  1263.     there's probably a better way." Also KLUGE UP.  5. KLUGE
  1264.     AROUND:  To  avoid  by  inserting  a  kluge.  6. (WPI) A
  1265.     feature which is implemented in a RUDE manner.
  1266.  
  1267. LDB (lid'dib)  [from  the  PDP-10  instruction  set]  v.  To
  1268.     extract from the middle.
  1269.  
  1270. LIFE n. A cellular-automaton game invented  by  John  Horton
  1271.     Conway,  and first introduced publicly by Martin Gardner
  1272.     (Scientific American, October 1970).
  1273.  
  1274. LINE FEED (standard ASCII terminology) 1.  v.  To  feed  the
  1275.     paper  through a terminal by one line (in order to print
  1276.     on the next line).  2. n. The  "character"  that  causes
  1277.     the terminal to perform this action.
  1278.  
  1279. LINE STARVE (MIT) Inverse of LINE FEED.
  1280.  
  1281. LOGICAL [from the technical term "logical device," wherein a
  1282.     physical  device  is  referred  to by an arbitrary name]
  1283.     adj.  Understood  to  have  a  meaning  not  necessarily
  1284.     corresponding  to  reality.   E.g.,  if a person who has
  1285.     long held a certain post (e.g.,  Les  Earnest  at  SAIL)
  1286.     left and was replaced, the replacement would for a while
  1287.     be known as the "logical Les Earnest." The word  VIRTUAL
  1288.     is  also  used.   At  SAIL, "logical" compass directions
  1289.     denote a coordinate system in which "logical  north"  is
  1290.     toward  San  Francisco,  "logical  west"  is  toward the
  1291.     ocean, etc., even though logical  north  varies  between
  1292.     physical (true) north near SF and physical west near San
  1293.     Jose.  (The best rule of thumb here is  that  El  Camino
  1294.     Real by definition always runs logical north-and-south.)
  1295.  
  1296. LOSE [from MIT jargon] v. 1. To fail.  A program loses  when
  1297.     it encounters an exceptional condition.  2. To be excep-
  1298.     tionally unaesthetic.  3. Of people, to be obnoxious  or
  1299.     unusually  stupid  (as opposed to ignorant).  4. DESERVE
  1300.     TO LOSE: v. Said of someone who willfully does the wrong
  1301.     thing;  humorously,  if  one  uses a feature known to be
  1302.     marginal.  What is meant is that one deserves the conse-
  1303.     quences of one's losing actions.  "Boy, anyone who tries
  1304.     to use MULTICS deserves to lose!" LOSE LOSE: a reply  or
  1305.     comment on a situation.
  1306.  
  1307. LOSER n. An unexpectedly bad situation, program, programmer,
  1308.     or person.  Especially "real loser."
  1309.  
  1310. LOSS n. Something which loses.  WHAT A (MOBY) LOSS!:  inter-
  1311.     jection.
  1312.  
  1313.  
  1314.  
  1315.  
  1316.  
  1317.  
  1318.  
  1319.  
  1320.  
  1321.  
  1322.                            - 21 -
  1323.  
  1324.  
  1325. LOSSAGE n. The result of a bug or malfunction.
  1326.  
  1327. LPT (lip'it) n. Line printer, of course.
  1328.  
  1329. LUSER See USER.
  1330.  
  1331. MACROTAPE n. An industry standard reel of tape,  as  opposed
  1332.     to a MICROTAPE.
  1333.  
  1334. MAGIC adj. 1. As yet  unexplained,  or  too  complicated  to
  1335.     explain.   (Arthur  C.  Clarke  once said that magic was
  1336.     as-yet-not-understood science.)  "TTY  echoing  is  con-
  1337.     trolled  by a large number of magic bits." "This routine
  1338.     magically computes the parity of an  eight-bit  byte  in
  1339.     three  instructions."  2.  (Stanford) A feature not gen-
  1340.     erally  publicized  which  allows  something   otherwise
  1341.     impossible,  or  a feature formerly in that category but
  1342.     now unveiled.   Example:  The  keyboard  commands  which
  1343.     override the screen-hiding features.
  1344.  
  1345. MARGINAL adj. 1. Extremely small.  "A marginal  increase  in
  1346.     core can decrease GC time drastically." See EPSILON.  2.
  1347.     Of extremely small merit.  "This  proposed  new  feature
  1348.     seems rather marginal to me." 3. Of extremely small pro-
  1349.     bability of winning.  "The power supply was rather  mar-
  1350.     ginal  anyway; no wonder it crapped out." 4. MARGINALLY:
  1351.     adv. Slightly.   "The  ravs  here  are  only  marginally
  1352.     better than at Small Eating Place."
  1353.  
  1354. MICROTAPE n. Occasionally used to mean a DECtape, as opposed
  1355.     to  a MACROTAPE.  This was the official DEC term for the
  1356.     stuff until someone consed up the word "DECtape."
  1357.  
  1358. MISFEATURE n. A feature  which  eventually  screws  someone,
  1359.     possibly  because it is not adequate for a new situation
  1360.     which has evolved.  It is not the same as a bug  because
  1361.     fixing  it  involves a gross philosophical change to the
  1362.     structure  of  the  system  involved.   Often  a  former
  1363.     feature becomes a misfeature because a tradeoff was made
  1364.     whose parameters subsequently changed (possibly only  in
  1365.     the  judgment  of  the implementors).  "Well, yeah, it's
  1366.     kind of a misfeature that file names are limited to  six
  1367.     characters, but we're stuck with it for now."
  1368.  
  1369. MOBY [seems to have been in use among  model  railroad  fans
  1370.     years  ago.   Entered  the world of AI with the Fabritek
  1371.     256K moby memory of  MIT-AI.   Derived  from  Melville's
  1372.     _M_o_b_y _D_i_c_k (some say from "Moby Pickle").] 1. adj. Large,
  1373.     immense, or complex.  "A moby frob." 2. n.  The  maximum
  1374.     address  space of a machine, hence 3. n. 256K words, the
  1375.     size of a PDP-10 moby.  (The maximum address space means
  1376.     the  maximum  normally  addressable space, as opposed to
  1377.     the amount of physical memory a machine can have.   Thus
  1378.     the  MIT  PDP-10s each have two mobies, usually referred
  1379.  
  1380.  
  1381.  
  1382.  
  1383.  
  1384.  
  1385.  
  1386.  
  1387.  
  1388.                            - 22 -
  1389.  
  1390.  
  1391.     to  as  the  "low  moby"  (0-777777)  and  "high   moby"
  1392.     (1000000-1777777),  or  as "moby 0" and "moby 1." MIT-AI
  1393.     has four mobies of address space: moby 2  is  the  PDP-6
  1394.     memory, and moby 3 the PDP-11 interface.)  In this sense
  1395.     "moby" is often used as a generic unit of either address
  1396.     space  (18. bits' worth) or of memory (about a megabyte,
  1397.     or 9/8 megabyte (if one accounts for difference  between
  1398.     32-  and  36-bit  words),  or 5/4 megacharacters).  4. A
  1399.     title of address (never of third-person reference), usu-
  1400.     ally  used to show admiration, respect, and/or friendli-
  1401.     ness to a competent hacker.  "So, moby Knight, how's the
  1402.     CONS  machine  doing?" 5. adj. In backgammon, doubles on
  1403.     the dice, as in "moby sixes," "moby  ones,"  etc.   MOBY
  1404.     FOO, MOBY WIN, MOBY LOSS: standard emphatic forms.  FOBY
  1405.     MOO: a spoonerism due to Greenblatt.
  1406.  
  1407. MODE n. A general state,  usually  used  with  an  adjective
  1408.     describing  the  state.  "No time to hack; I'm in thesis
  1409.     mode." Usage: in its jargon sense, MODE  is  most  often
  1410.     said  of  people, though it is sometimes applied to pro-
  1411.     grams and inanimate objects.  "If you're  on  a  TTY,  E
  1412.     will switch to non-display mode." In particular, see DAY
  1413.     MODE, NIGHT MODE, and YOYO MODE;  also  COM  MODE,  TALK
  1414.     MODE, and GABRIEL MODE.
  1415.  
  1416. MODULO prep. Except for.  From mathematical terminology: one
  1417.     can consider saying that 4=22 "except for the 9's" (4=22
  1418.     mod 9).  "Well, LISP seems to work okay now, modulo that
  1419.     GC bug."
  1420.  
  1421. MOON n. 1. A celestial object whose phase is very  important
  1422.     to  hackers.   See  PHASE  OF  THE  MOON.   2. Dave Moon
  1423.     (MOON@MC).
  1424.  
  1425. MUMBLAGE n. The topic of one's mumbling (see MUMBLE).   "All
  1426.     that  mumblage" is used like "all that stuff" when it is
  1427.     not quite clear what it is or how it works, or like "all
  1428.     that  crap"  when  "mumble" is being used as an implicit
  1429.     replacement for obscenities.
  1430.  
  1431. MUMBLE interj. 1. Said when the correct response  is  either
  1432.     too  complicated  to  enunciate  or  the speaker has not
  1433.     thought it out.  Often  prefaces  a  longer  answer,  or
  1434.     indicates  a  general  reluctance to get into a big long
  1435.     discussion.  "Well, mumble." 2.  Sometimes  used  as  an
  1436.     expression of disagreement.  "I think we should buy it."
  1437.     "Mumble!" Common variant: MUMBLE FROTZ.  3. Yet  another
  1438.     metasyntactic variable, like FOO.
  1439.  
  1440. MUNCH (often confused with "mung,"  q.v.)  v.  To  transform
  1441.     information  in  a serial fashion, often requiring large
  1442.     amounts of computation.  To trace down a data structure.
  1443.     Related to CRUNCH (q.v.), but connotes less pain.
  1444.  
  1445.  
  1446.  
  1447.  
  1448.  
  1449.  
  1450.  
  1451.  
  1452.  
  1453.  
  1454.                            - 23 -
  1455.  
  1456.  
  1457. MUNCHING SQUARES n. A display hack dating back to the PDP-1,
  1458.     which  employs  a trivial computation (involving XOR'ing
  1459.     of x-y display coordinates - see HAKMEM  items  146-148)
  1460.     to produce an impressive display of moving, growing, and
  1461.     shrinking squares.  The hack  usually  has  a  parameter
  1462.     (usually  taken  from  toggle switches) which when well-
  1463.     chosen can produce  amazing  effects.   Some  of  these,
  1464.     discovered  recently  on  the  LISP  machine,  have been
  1465.     christened MUNCHING TRIANGLES, MUNCHING W'S, and  MUNCH-
  1466.     ING MAZES.
  1467.  
  1468. MUNG (variant: MUNGE) [recursive acronym for Mung  Until  No
  1469.     Good]  v.  1.   To  make changes to a file, often large-
  1470.     scale, usually  irrevocable.   Occasionally  accidental.
  1471.     See BLT.  2. To destroy, usually accidentally, occasion-
  1472.     ally maliciously.  The system only  mungs  things  mali-
  1473.     ciously.
  1474.  
  1475. N adj. 1. Some large and indeterminate  number  of  objects;
  1476.     "There were N bugs in that crock!" Also used in its ori-
  1477.     ginal sense of a variable name.  2. An arbitrarily large
  1478.     (and  perhaps  infinite)  number.   3.  A variable whose
  1479.     value is specified by the current context.   "We'd  like
  1480.     to order N wonton soups and a family dinner for N-1." 4.
  1481.     NTH: adj. The ordinal counterpart of N.   "Now  for  the
  1482.     Nth  and  last  time... ." In the specific context "Nth-
  1483.     year grad student," N is  generally  assumed  to  be  at
  1484.     least 4, and is usually 5 or more.  See also 69.
  1485.  
  1486. NIGHT MODE See PHASE (of people).
  1487.  
  1488. NIL [from LISP terminology for "false"] No.  Usage: used  in
  1489.     reply  to  a  question, particularly one asked using the
  1490.     "-P" convention.  See T.
  1491.  
  1492. OBSCURE adj. Used in an exaggeration of its normal  meaning,
  1493.     to imply a total lack of comprehensibility.  "The reason
  1494.     for that last crash is obscure." "FIND's command  syntax
  1495.     is obscure." MODERATELY OBSCURE implies that it could be
  1496.     figured out but probably isn't worth the trouble.
  1497.  
  1498. OPEN n. Abbreviation for "open (or left) parenthesis,"  used
  1499.     when  necessary  to  eliminate  oral ambiguity.  To read
  1500.     aloud the LISP form (DEFUN FOO (X) (PLUS X 1)) one might
  1501.     say:  "Open  def-fun foo, open eks close, open, plus eks
  1502.     one, close close." See CLOSE.
  1503.  
  1504. PARSE [from linguistic terminology] v. 1. To  determine  the
  1505.     syntactic  structure  of  a  sentence or other utterance
  1506.     (close to the standard English meaning).  Example: "That
  1507.     was  the  one  I saw you." "I can't parse that." 2. More
  1508.     generally, to understand or comprehend.  "It's very sim-
  1509.     ple;  you  just kretch the glims and then aos the zotz."
  1510.     "I can't parse that." 3. Of fish, to have to remove  the
  1511.  
  1512.  
  1513.  
  1514.  
  1515.  
  1516.  
  1517.  
  1518.  
  1519.  
  1520.                            - 24 -
  1521.  
  1522.  
  1523.     bones  yourself  (usually  at a Chinese restaurant).  "I
  1524.     object to parsing fish" means "I don't  want  to  get  a
  1525.     whole  fish,  but a sliced one is okay." A "parsed fish"
  1526.     has  been  deboned.   There  is  some  controversy  over
  1527.     whether  "unparsed"  should  mean  "bony,"  or also mean
  1528.     "deboned."
  1529.  
  1530. PATCH 1. n. A temporary addition to a piece of code, usually
  1531.     as  a  quick-and-dirty remedy to an existing bug or mis-
  1532.     feature.  A patch may or may not work, and  may  or  may
  1533.     not eventually be incorporated permanently into the pro-
  1534.     gram.  2. v. To insert a patch into a piece of code.
  1535.  
  1536. PDL (piddle or puddle) [acronym for Push Down List] n. 1.  A
  1537.     LIFO  queue  (stack);  more loosely, any priority queue;
  1538.     even more loosely, any queue.  A person's pdl is the set
  1539.     of things he has to do in the future.  One speaks of the
  1540.     next project to be attacked as having risen to  the  top
  1541.     of  the  pdl.   "I'm afraid I've got real work to do, so
  1542.     this'll have to be pushed way down on my pdl." See  PUSH
  1543.     and POP.  2. Dave Lebling (PDL@DM).
  1544.  
  1545. PESSIMAL [Latin-based antonym for "optimal"] adj.  Maximally
  1546.     bad.  "This is a pessimal situation."
  1547.  
  1548. PESSIMIZING COMPILER n. A compiler that produces object code
  1549.     that is worse than the straightforward or obvious trans-
  1550.     lation.
  1551.  
  1552. PHANTOM n.  (Stanford)  The  SAIL  equivalent  of  a  DRAGON
  1553.     (q.v.).   Typical  phantoms  include the accounting pro-
  1554.     gram,  the  news-wire  monitor,  and  the  lpt  and  xgp
  1555.     spoolers.
  1556.  
  1557. PHASE (of people) 1. n. The phase of  one's  waking-sleeping
  1558.     schedule  with  respect  to  the standard 24-hour cycle.
  1559.     This is a useful concept among people who often work  at
  1560.     night  according to no fixed schedule.  It is not uncom-
  1561.     mon to change one's phase by as much as six hours/day on
  1562.     a  regular  basis.  "What's your phase?" "I've been get-
  1563.     ting in about 8 PM lately, but I'm going to work  around
  1564.     to  the day schedule by Friday." A person who is roughly
  1565.     12 hours out of phase is sometimes said to be in  "night
  1566.     mode."  (The term "day mode" is also used, but less fre-
  1567.     quently.)  2. CHANGE PHASE THE HARD WAY: To  stay  awake
  1568.     for  a  very  long time in order to get into a different
  1569.     phase.  3. CHANGE PHASE THE EASY  WAY:  To  stay  asleep
  1570.     etc.
  1571.  
  1572. PHASE OF THE MOON n. Used humorously as a  random  parameter
  1573.     on which something is said to depend.  Sometimes implies
  1574.     unreliability of whatever is dependent, or  that  relia-
  1575.     bility  seems  to  be dependent on conditions nobody has
  1576.     been able to determine.  "This feature depends on having
  1577.  
  1578.  
  1579.  
  1580.  
  1581.  
  1582.  
  1583.  
  1584.  
  1585.  
  1586.                            - 25 -
  1587.  
  1588.  
  1589.     the  channel  open in mumble mode, having the foo switch
  1590.     set, and on the phase of the moon."
  1591.  
  1592. PLUGH [from the Adventure game] v. See XYZZY.
  1593.  
  1594. POM n. Phase of the moon (q.v.).  Usage: usually used in the
  1595.     phrase "POM dependent" which means flakey (q.v.).
  1596.  
  1597. POP [based on the stack operation that removes the top of  a
  1598.     stack,  and the fact that procedure return addresses are
  1599.     saved on the stack] dialect: POPJ  (pop-jay),  based  on
  1600.     the  PDP-10  procedure return instruction.  v. To return
  1601.     from a digression.  By verb doubling, "Popj, popj" means
  1602.     roughly, "Now let's see, where were we?"
  1603.  
  1604. PPN (pip'in) [DEC terminology, short for  Project-Programmer
  1605.     Number]  n.  1. A combination "project" (directory name)
  1606.     and programmer name, used to identify a specific  direc-
  1607.     tory  belonging  to  that user.  For instance, "FOO,BAR"
  1608.     would be the FOO directory for user BAR.  Since the name
  1609.     is  restricted  to three letters, the programmer name is
  1610.     usually the person's initials, though sometimes it is  a
  1611.     nickname or other special sequence.  (Standard DEC setup
  1612.     is to have two  octal  numbers  instead  of  characters;
  1613.     hence  the original acronym.)  2.  Often used loosely to
  1614.     refer to the programmer name alone.  "I want to send you
  1615.     some  mail;  what's  your  ppn?" Usage: not used at MIT,
  1616.     since ITS does not  use  ppn's.   The  equivalent  terms
  1617.     would  be  UNAME  and  SNAME,  depending on context, but
  1618.     these are not used except in their technical senses.
  1619.  
  1620. PROTOCOL See DO PROTOCOL.
  1621.  
  1622. PSEUDOPRIME n. A backgammon prime (six consecutive  occupied
  1623.     points) with one point missing.
  1624.  
  1625. PTY (pity) n. Pseudo TTY, a simulated TTY used to run a  job
  1626.     under the supervision of another job.  PTYJOB (pity-job)
  1627.     n. The  job  being  run  on  the  PTY.   Also  a  common
  1628.     general-purpose  program  for  creating  and using PTYs.
  1629.     This is DEC and SAIL terminology; the MIT equivalent  is
  1630.     STY.
  1631.  
  1632. PUNT [from the punch line of an  old  joke:  "Drop  back  15
  1633.     yards  and  punt"]  v. To give up, typically without any
  1634.     intention of retrying.
  1635.  
  1636. PUSH [based on the stack operation  that  puts  the  current
  1637.     information on a stack, and the fact that procedure call
  1638.     addresses are saved on the stack] dialect: PUSHJ  (push-
  1639.     jay),  based  on  the PDP-10 procedure call instruction.
  1640.     v. To enter upon a digression, to save the current  dis-
  1641.     cussion for later.
  1642.  
  1643.  
  1644.  
  1645.  
  1646.  
  1647.  
  1648.  
  1649.  
  1650.  
  1651.  
  1652.                            - 26 -
  1653.  
  1654.  
  1655. QUES (kwess) 1. n. The question mark  character  ("?").   2.
  1656.     interj.  What?  Also QUES QUES?  See WALL.
  1657.  
  1658. QUUX [invented by Steele.  Mythically, from the Latin  semi-
  1659.     deponent  verb  QUUXO, QUUXARE, QUUXANDUM IRI; noun form
  1660.     variously QUUX (plural QUUCES, Anglicized to QUUXES) and
  1661.     QUUXU  (genitive  plural  is  QUUXUUM, four U's in seven
  1662.     letters).] 1.  Originally,  a  meta-word  like  FOO  and
  1663.     FOOBAR.   Invented by Guy Steele for precisely this pur-
  1664.     pose when he was young and naive and not yet interacting
  1665.     with  the  real computing community.  Many people invent
  1666.     such words; this one seems simply  to  have  been  lucky
  1667.     enough  to  have  spread  a little.  2. interj. See FOO;
  1668.     however, denotes very little  disgust,  and  is  uttered
  1669.     mostly for the sake of the sound of it.  3. n. Refers to
  1670.     one of four people who went to Boston Latin  School  and
  1671.     eventually to MIT:
  1672.  
  1673.             THE GREAT QUUX:  Guy L. Steele, Jr.
  1674.             THE LESSER QUUX:  David J. Littleboy
  1675.             THE MEDIOCRE QUUX:  Alan P. Swide
  1676.             THE MICRO QUUX:  Sam Lewis
  1677.  
  1678.     (This taxonomy is said to be similarly applied to  three
  1679.     Frankston  brothers  at  MIT.)  QUUX, without qualifica-
  1680.     tion, usually refers to The Great Quux, who is  somewhat
  1681.     infamous  for  light  verse  and for the "Crunchly" car-
  1682.     toons.  4. QUUXY: adj. Of or pertaining to a QUUX.
  1683.  
  1684. RANDOM adj. 1. Unpredictable (closest to mathematical defin-
  1685.     ition);  weird.  "The system's been behaving pretty ran-
  1686.     domly." 2. Assorted; undistinguished.  "Who was  at  the
  1687.     conference?" "Just a bunch of random business types." 3.
  1688.     Frivolous; unproductive; undirected (pejorative).  "He's
  1689.     just  a  random  loser." 4. Incoherent or inelegant; not
  1690.     well organized.  "The program has a random set  of  mis-
  1691.     features."  "That's  a  random  name for that function."
  1692.     "Well, all the names were chosen  pretty  randomly."  5.
  1693.     Gratuitously  wrong,  i.e.,  poorly done and for no good
  1694.     apparent reason.  For example, a  program  that  handles
  1695.     file name defaulting in a particularly useless way, or a
  1696.     routine that could easily have  been  coded  using  only
  1697.     three  ac's,  but  randomly uses seven for assorted non-
  1698.     overlapping purposes, so that no one else can invoke  it
  1699.     without first saving four extra ac's.  6. In no particu-
  1700.     lar order, though deterministic.  "The I/O channels  are
  1701.     in  a pool, and when a file is opened one is chosen ran-
  1702.     domly." n. 7. A random hacker; used particularly of high
  1703.     school  students who soak up computer time and generally
  1704.     get in the way.  8. (occasional MIT usage) One who lives
  1705.     at  Random  Hall.  J. RANDOM is often prefixed to a noun
  1706.     to make a "name" out of  it  (by  comparison  to  common
  1707.     names  such  as  "J. Fred Muggs").  The most common uses
  1708.     are "J. Random Loser" and "J. Random Nurd"  ("Should  J.
  1709.  
  1710.  
  1711.  
  1712.  
  1713.  
  1714.  
  1715.  
  1716.  
  1717.  
  1718.                            - 27 -
  1719.  
  1720.  
  1721.     Random Loser be allowed to gun down other people?"), but
  1722.     it can be used just as an elaborate version of RANDOM in
  1723.     any  sense.   [See also the note at the end of the entry
  1724.     for HACK.]
  1725.  
  1726. RANDOMNESS  n.  An  unexplainable   misfeature;   gratuitous
  1727.     inelegance.   Also,  a  hack or crock which depends on a
  1728.     complex combination of coincidences (or rather, the com-
  1729.     bination  upon which the crock depends).  "This hack can
  1730.     output characters 40-57 by putting the character in  the
  1731.     accumulator  field  of an XCT and then extracting 6 bits
  1732.     -- the low two bits of the  XCT  opcode  are  the  right
  1733.     thing." "What randomness!"
  1734.  
  1735. RAPE v. To  (metaphorically)  screw  someone  or  something,
  1736.     violently.   Usage: often used in describing file-system
  1737.     damage.  "So-and-so was running a program that did abso-
  1738.     lute disk I/O and ended up raping the master directory."
  1739.  
  1740. RAVE (WPI) v. 1. To persist in discussing  a  specific  sub-
  1741.     ject.   2.  To  speak authoritatively on a subject about
  1742.     which one knows very little.  3. To complain to a person
  1743.     who  is not in a position to correct the difficulty.  4.
  1744.     To purposely  annoy  another  person  verbally.   5.  To
  1745.     evangelize.   See  FLAME.   Also used to describe a less
  1746.     negative form of blather, such as friendly bullshitting.
  1747.  
  1748. REAL USER n. 1. A commercial user.  One who is paying "real"
  1749.     money for his computer usage.  2. A non-hacker.  Someone
  1750.     using the system for an explicit purpose (research  pro-
  1751.     ject, course, etc.).  See USER.
  1752.  
  1753. REAL WORLD, THE n. 1. In programming, those institutions  at
  1754.     which  programming  may  be used in the same sentence as
  1755.     FORTRAN, COBOL, RPG, IBM, etc.  2. To  programmers,  the
  1756.     location  of  non-programmers and activities not related
  1757.     to programming.  3. A universe  in  which  the  standard
  1758.     dress  is  shirt and tie and in which a person's working
  1759.     hours are defined as 9 to 5.  4.  The  location  of  the
  1760.     status  quo.   5.  Anywhere outside a university.  "Poor
  1761.     fellow, he's left MIT and gone  into  the  real  world."
  1762.     Used  pejoratively  by those not in residence there.  In
  1763.     conversation, talking of someone  who  has  entered  the
  1764.     real  world  is not unlike talking about a deceased per-
  1765.     son.
  1766.  
  1767. RECURSION n. See RECURSION, TAIL RECURSION.
  1768.  
  1769. REL See BIN.
  1770.  
  1771. RIGHT THING, THE n. That which is "obviously" the correct or
  1772.     appropriate  thing  to  use,  do, say, etc.  Use of this
  1773.     term often implies that in fact  reasonable  people  may
  1774.     disagree.   "Never  let  your  conscience  keep you from
  1775.  
  1776.  
  1777.  
  1778.  
  1779.  
  1780.  
  1781.  
  1782.  
  1783.  
  1784.                            - 28 -
  1785.  
  1786.  
  1787.     doing the right thing!" "What's the right thing for LISP
  1788.     to do when it reads '(.)'?"
  1789.  
  1790. RUDE (WPI) adj. 1. (of a program) Badly written.   2.  Func-
  1791.     tionally poor, e.g. a program which is very difficult to
  1792.     use because of gratuitously poor (random?) design  deci-
  1793.     sions.  See CUSPY.
  1794.  
  1795. SACRED adj. Reserved for the exclusive use of  something  (a
  1796.     metaphorical extension of the standard meaning).  "Accu-
  1797.     mulator 7 is sacred to the  UUO  handler."  Often  means
  1798.     that  anyone may look at the sacred object, but clobber-
  1799.     ing it will screw whatever it is sacred to.
  1800.  
  1801. SAGA (WPI) n. A cuspy but bogus raving story dealing with  N
  1802.     random broken people.
  1803.  
  1804. SAV (save) See BIN.
  1805.  
  1806. SEMI 1. n.  Abbreviation  for  "semicolon,"  when  speaking.
  1807.     "Commands to GRIND are prefixed by semi-semi-star" means
  1808.     that the prefix is ";;*", not 1/4 of a star.  2.  Prefix
  1809.     with words such as "immediately," as a qualifier.  "When
  1810.     is the system coming up?" "Semi-immediately."
  1811.  
  1812. SERVER n. A kind of DAEMON which performs a service for  the
  1813.     requester, which often runs on a computer other than the
  1814.     one on which the server runs.
  1815.  
  1816. SHIFT LEFT (RIGHT) LOGICAL [from any  of  various  machines'
  1817.     instruction  sets]  1.  v.  To  move oneself to the left
  1818.     (right).  To move out of the way.  2. imper. Get out  of
  1819.     that  (my)  seat!   Usage: often used without the "logi-
  1820.     cal," or as "left shift" instead of "shift left."  Some-
  1821.     times  heard  as LSH (lish), from the PDP-10 instruction
  1822.     set.
  1823.  
  1824. SHR (share or shir)  See BIN.
  1825.  
  1826. SHRIEK See EXCL.  (Occasional CMU usage.)
  1827.  
  1828. 69 adj. Large quantity.  Usage: Exclusive  to  MIT-AI.   "Go
  1829.     away,  I  have  69  things  to do to DDT before worrying
  1830.     about fixing the bug in the phase  of  the  moon  output
  1831.     routine."  [Note: Actually, any number less than 100 but
  1832.     large enough to have no obvious magic properties will be
  1833.     recognized as a "large number." There is no denying that
  1834.     "69" is the local favorite.  I don't  know  whether  its
  1835.     origins are related to the obscene interpretation, but I
  1836.     do know that 69 decimal = 105 octal, and 69  hexadecimal
  1837.     = 105 decimal, which is a nice property. --GLS]
  1838.  
  1839. SLOP n. 1. A one-sided fudge factor  (q.v.).   Often  intro-
  1840.     duced  to  avoid  the  possibility  of a fencepost error
  1841.  
  1842.  
  1843.  
  1844.  
  1845.  
  1846.  
  1847.  
  1848.  
  1849.  
  1850.                            - 29 -
  1851.  
  1852.  
  1853.     (q.v.).  2. (used by compiler freaks) The ratio of  code
  1854.     generated  by a compiler to hand-compiled code, minus 1;
  1855.     i.e., the space (or maybe time)  you  lose  because  you
  1856.     didn't do it yourself.
  1857.  
  1858. SLURP v. To read a large data file entirely into core before
  1859.     working  on  it.   "This  program  slurps  in a 1K-by-1K
  1860.     matrix and does an FFT."
  1861.  
  1862. SMART adj. Said of a  program  that  does  the  Right  Thing
  1863.     (q.v.)  in  a wide variety of complicated circumstances.
  1864.     There is a difference between calling  a  program  smart
  1865.     and  calling it intelligent; in particular, there do not
  1866.     exist any intelligent programs.
  1867.  
  1868. SMOKING CLOVER n. A psychedelic color munch due to Gosper.
  1869.  
  1870. SMOP [Simple (or Small) Matter of Programming] n. A piece of
  1871.     code,  not yet written, whose anticipated length is sig-
  1872.     nificantly greater than its complexity.  Usage: used  to
  1873.     refer  to a program that could obviously be written, but
  1874.     is not worth the trouble.
  1875.  
  1876. SNARF v. To grab, esp. a large document or file for the pur-
  1877.     pose  of  using  it  either with or without the author's
  1878.     permission.  See BLT.  Variant: SNARF  (IT)  DOWN.   (At
  1879.     MIT  on ITS, DDT has a command called :SNARF which grabs
  1880.     a job from another (inferior) DDT.)
  1881.  
  1882. SOFTWARE ROT n. Hypothetical disease the existence of  which
  1883.     has  been  deduced from the observation that unused pro-
  1884.     grams or features will  stop  working  after  sufficient
  1885.     time  has  passed,  even  if "nothing has changed." Also
  1886.     known as "bit decay."
  1887.  
  1888. SOFTWARILY adv. In a way pertaining to software.  "The  sys-
  1889.     tem  is softwarily unreliable." The adjective "softwary"
  1890.     is NOT used.  See HARDWARILY.
  1891.  
  1892. SOS 1. (ess-oh-ess) n. A losing editor, SON OF STOPGAP.   2.
  1893.     (sahss)  v.  Inverse of AOS, from the PDP-10 instruction
  1894.     set.
  1895.  
  1896. SPAZZ 1. v.  To  behave  spastically  or  erratically;  more
  1897.     often,  to  commit  a  single  gross error.  "Boy, is he
  1898.     spazzing!" 2. n. One who spazzes.  "Boy, what a  spazz!"
  1899.     3. n. The result of spazzing.  "Boy, what a spazz!"
  1900.  
  1901. SPLAT n. 1. Name used in many places (DEC, IBM, and  others)
  1902.     for  the ASCII star ("*") character.  2. (MIT) Name used
  1903.     by some people for the ASCII pound-sign ("#") character.
  1904.     3.   (Stanford)   Name  used  by  some  people  for  the
  1905.     Stanford/ITS extended ASCII circle-x  character.   (This
  1906.     character  is  also  called  "circle-x,"  "blobby,"  and
  1907.  
  1908.  
  1909.  
  1910.  
  1911.  
  1912.  
  1913.  
  1914.  
  1915.  
  1916.                            - 30 -
  1917.  
  1918.  
  1919.     "frob," among other names.)  4. (Stanford) Name for  the
  1920.     semi-mythical  extended ASCII circle-plus character.  5.
  1921.     Canonical name for an output routine that outputs  what-
  1922.     ever  the  the local interpretation of splat is.  Usage:
  1923.     nobody really agrees what character "splat" is, but  the
  1924.     term is common.
  1925.  
  1926. SUPDUP v. To communicate with another ARPAnet host using the
  1927.     SUPDUP  program, which is a SUPer-DUPer TELNET talking a
  1928.     special display protocol used mostly in talking  to  ITS
  1929.     sites.  Sometimes abbreviated to SD.
  1930.  
  1931. STATE n. Condition, situation.  "What's the state of NEWIO?"
  1932.     "It's  winning away." "What's your state?" "I'm about to
  1933.     gronk out." As a special case, "What's the state of  the
  1934.     world?"  (or,  more  silly,  "State-of-world-P?")  means
  1935.     "What's new?" or "What's going on?"
  1936.  
  1937. STOPPAGE n. Extreme lossage (see LOSSAGE) resulting in some-
  1938.     thing (usually vital) becoming completely unusable.
  1939.  
  1940. STY  (pronounced  "sty,"  not  spelled  out)  n.  A  pseudo-
  1941.     teletype,  which is a two-way pipeline with a job on one
  1942.     end and a fake keyboard-tty on the other.  Also, a stan-
  1943.     dard program which provides a pipeline from its control-
  1944.     ling tty to a pseudo-teletype  (and  thence  to  another
  1945.     tty, thereby providing a "sub-tty").  This is MIT termi-
  1946.     nology; the SAIL and DEC equivalent is PTY.
  1947.  
  1948. SUPERPROGRAMMER n.  See  "wizard,"  "hacker."  Usage:  rare.
  1949.     (Becoming more common among IBM and Yourdon types.)
  1950.  
  1951. SWAPPED adj. From the use of secondary  storage  devices  to
  1952.     implement virtual memory in computer systems.  Something
  1953.     which is SWAPPED IN is available for  immediate  use  in
  1954.     main  memory,  and otherwise is SWAPPED OUT.  Often used
  1955.     metaphorically to refer to people's  memories  ("I  read
  1956.     TECO  ORDER  every  few  months  to keep the information
  1957.     swapped in.") or to their own availability  ("I'll  swap
  1958.     you  in  as soon as I finish looking at this other prob-
  1959.     lem.").
  1960.  
  1961. SYSTEM n. 1. The supervisor program on the computer.  2. Any
  1962.     large-scale  program.   3.  Any method or algorithm.  4.
  1963.     The way things are usually done.  Usage: a fairly  ambi-
  1964.     guous word.  "You can't beat the system." SYSTEM HACKER:
  1965.     one who hacks the system (in sense 1 only; for  sense  2
  1966.     one mentions the particular program: e.g., LISP HACKER)
  1967.  
  1968. T [from LISP terminology for "true"] 1. Yes.  Usage: used in
  1969.     reply  to  a  question, particularly one asked using the
  1970.     "-P" convention).  See NIL.  2. See TIME T.
  1971.  
  1972. TAIL RECURSION n. See TAIL RECURSION.
  1973.  
  1974.  
  1975.  
  1976.  
  1977.  
  1978.  
  1979.  
  1980.  
  1981.  
  1982.                            - 31 -
  1983.  
  1984.  
  1985. TALK MODE See COM MODE.
  1986.  
  1987. TASTE n. (primarily MIT-DMS) The quality in  programs  which
  1988.     tends  to  be  inversely  proportional  to the number of
  1989.     features, hacks, and kluges programmed into  it.   Also,
  1990.     TASTY, TASTEFUL, TASTEFULNESS.  "This feature comes in N
  1991.     tasty flavors."  Although  TASTEFUL  and  FLAVORFUL  are
  1992.     essentially synonyms, TASTE and FLAVOR are not.
  1993.  
  1994. TECO (tee'koe) [acronym for Text Editor and COrrector] 1. n.
  1995.     A  text  editor  developed  at MIT, and modified by just
  1996.     about everybody.  If all the dialects are included, TECO
  1997.     might  well  be  the single most prolific editor in use.
  1998.     Noted for its powerful pseudo-programming  features  and
  1999.     its  incredibly  hairy  syntax.  2. v. To edit using the
  2000.     TECO editor in one of its infinite forms; sometimes used
  2001.     to mean "to edit" even when not using TECO!  Usage: rare
  2002.     at SAIL, where most people wouldn't touch  TECO  with  a
  2003.     TENEX  pole.   [Historical  note: DEC grabbed an ancient
  2004.     version of MIT TECO many years ago when it was  still  a
  2005.     TTY-oriented  editor.   By  now,  TECO  at MIT is highly
  2006.     display-oriented and is actually a language for  writing
  2007.     editors,  rather than an editor.  Meanwhile, the outside
  2008.     world's various versions of TECO remain almost the  same
  2009.     as the MIT version of ten years ago.  DEC recently tried
  2010.     to discourage its use, but an  underground  movement  of
  2011.     sorts  kept  it  alive.]  [Since this note was written I
  2012.     found out that DEC  tried  to  force  their  hackers  by
  2013.     administrative decision to use a hacked up and generally
  2014.     lobotomized version of SOS instead  of  TECO,  and  they
  2015.     revolted. --MRC]
  2016.  
  2017. TELNET v. To communicate with another ARPAnet host using the
  2018.     TELNET  protocol.   TOPS-10  people  use the word IMPCOM
  2019.     since that is the  program  name  for  them.   Sometimes
  2020.     abbreviated  to  TN.  "I usually TN over to SAIL just to
  2021.     read the AP News."
  2022.  
  2023. TENSE adj. Of programs, very clever and efficient.  A  tense
  2024.     piece  of  code often got that way because it was highly
  2025.     bummed, but sometimes it was just based on a great idea.
  2026.     A  comment  in  a  clever display routine by Mike Kazar:
  2027.     "This routine is so tense it will bring  tears  to  your
  2028.     eyes.   Much  thanks to Craig Everhart and James Gosling
  2029.     for inspiring this hack attack." A tense  programmer  is
  2030.     one who produces tense code.
  2031.  
  2032. TERPRI (tur'pree) [from the LISP 1.5  (and  later,  MacLISP)
  2033.     function  to  start a new line of output] v. To output a
  2034.     CRLF (q.v.).
  2035.  
  2036. THEORY n. Used in the general sense of idea, plan, story, or
  2037.     set  of  rules.   "What's the theory on fixing this TECO
  2038.     loss?"  "What's   the   theory   on   dinner   tonight?"
  2039.  
  2040.  
  2041.  
  2042.  
  2043.  
  2044.  
  2045.  
  2046.  
  2047.  
  2048.                            - 32 -
  2049.  
  2050.  
  2051.     ("Chinatown,  I  guess.")  "What's the current theory on
  2052.     letting losers on during the day?"  "The  theory  behind
  2053.     this change is to fix the following well-known screw..."
  2054.  
  2055. THRASH v. To move wildly or violently, without accomplishing
  2056.     anything  useful.  Swapping systems which are overloaded
  2057.     waste most of their time moving pages into  and  out  of
  2058.     core  (rather  than  performing useful computation), and
  2059.     are therefore said to thrash.
  2060.  
  2061. TICK n. 1. Interval of time; basic clock time  on  the  com-
  2062.     puter.   Typically 1/60 second.  See JIFFY.  2. In simu-
  2063.     lations, the discrete unit of time that passes "between"
  2064.     iterations  of the simulation mechanism.  In AI applica-
  2065.     tions, this amount of time is  often  left  unspecified,
  2066.     since  the  only  constraint  of interest is that caused
  2067.     things happen after their causes.  This sort of AI simu-
  2068.     lation  is often pejoratively referred to as "tick-tick-
  2069.     tick" simulation, especially when the  issue  of  simul-
  2070.     taneity  of  events  with  long,  independent  chains of
  2071.     causes is handwaved.
  2072.  
  2073. TIME T n. 1.  An  unspecified  but  usually  well-understood
  2074.     time,  often  used in conjunction with a later time T+1.
  2075.     "We'll meet on campus at time T or at  Louie's  at  time
  2076.     T+1."  2.  SINCE (OR AT) TIME T EQUALS MINUS INFINITY: A
  2077.     long time ago; for as long as anyone  can  remember;  at
  2078.     the time that some particular frob was first designed.
  2079.  
  2080. TOOL v.i. To work; to study.  See HACK (def #9).
  2081.  
  2082. TRAP 1. n. A program interrupt, usually used specifically to
  2083.     refer to an interrupt caused by some illegal action tak-
  2084.     ing place in the user program.  In most cases the system
  2085.     monitor  performs  some  action related to the nature of
  2086.     the illegality, then returns  control  to  the  program.
  2087.     See  UUO.   2.  v. To cause a trap.  "These instructions
  2088.     trap to the monitor." Also used transitively to indicate
  2089.     the   cause   of  the  trap.   "The  monitor  traps  all
  2090.     input/output instructions."
  2091.  
  2092. TTY (titty) n. Terminal of the teletype variety,  character-
  2093.     ized by a noisy mechanical printer, a very limited char-
  2094.     acter set, and poor print  quality.   Usage:  antiquated
  2095.     (like the TTY's themselves).  Sometimes used to refer to
  2096.     any terminal at all; sometimes used to refer to the par-
  2097.     ticular terminal controlling a job.
  2098.  
  2099. TWEAK v. To change  slightly,  usually  in  reference  to  a
  2100.     value.   Also used synonymously with TWIDDLE.  See FROB-
  2101.     NICATE and FUDGE FACTOR.
  2102.  
  2103. TWENEX n. The TOPS-20 operating system  by  DEC.   So  named
  2104.     because  TOPS-10  was  a  typically crufty DEC operating
  2105.  
  2106.  
  2107.  
  2108.  
  2109.  
  2110.  
  2111.  
  2112.  
  2113.  
  2114.                            - 33 -
  2115.  
  2116.  
  2117.     system for the PDP-10.  BBN developed their own  system,
  2118.     called  TENEX  (TEN  EXecutive), and in creating TOPS-20
  2119.     for the DEC-20 DEC copied TENEX and adapted it  for  the
  2120.     20.   Usage:  DEC  people  cringe when they hear TOPS-20
  2121.     referred to as "Twenex," but the term seems to be catch-
  2122.     ing  on  nevertheless.   Release  3 of TOPS-20 is suffi-
  2123.     ciently different from release 1  that  some  (not  all)
  2124.     hackers have stopped calling it TWENEX, though the writ-
  2125.     ten abbreviation "20x" is still used.
  2126.  
  2127. TWIDDLE n. 1. tilde (ASCII 176, "~").  Also  called  "squig-
  2128.     gle," "sqiggle" (sic--pronounced "skig'gul"), and "twad-
  2129.     dle," but twiddle is by far the most common term.  2.  A
  2130.     small  and  insignificant  change to a program.  Usually
  2131.     fixes one bug and generates several new ones.  3. v.  To
  2132.     change something in a small way.  Bits, for example, are
  2133.     often twiddled.  Twiddling a switch or knob implies much
  2134.     less  sense of purpose than toggling or tweaking it; see
  2135.     FROBNICATE.
  2136.  
  2137. UP adj. 1. Working, in order.  "The down escalator  is  up."
  2138.     2.  BRING  UP:  v. To create a working version and start
  2139.     it.  "They brought up a down system."
  2140.  
  2141. USER n. A programmer who will believe anything you tell him.
  2142.     One  who asks questions.  Identified at MIT with "loser"
  2143.     by the spelling "luser." See REAL USER.  [Note by GLS: I
  2144.     don't  agree  with  RF's  definition at all.  Basically,
  2145.     there are two classes of people who work with a program:
  2146.     there  are  implementors  (hackers)  and users (losers).
  2147.     The users are looked down on by hackers to a mild degree
  2148.     because  they don't understand the full ramifications of
  2149.     the system in all its glory.  (A few users  who  do  are
  2150.     known as real winners.)  It is true that users ask ques-
  2151.     tions (of necessity).  Very often they are  annoying  or
  2152.     downright stupid.]
  2153.  
  2154. UUO (you-you-oh) [short for "Un-Used Operation"] n. A DEC-10
  2155.     system monitor call.  The term "Un-Used Operation" comes
  2156.     from the fact that, on DEC-10 systems, monitor calls are
  2157.     implemented  as invalid or illegal machine instructions,
  2158.     which cause traps to the monitor (see TRAP).   The  SAIL
  2159.     manual  describing  the available UUO's has a cover pic-
  2160.     ture showing an  unidentified  underwater  object.   See
  2161.     YOYO.   [Note:  DEC sales people have since decided that
  2162.     "Un-Used Operation" sounds bad, so UUO  now  stands  for
  2163.     "Unimplemented  User  Operation."] Tenex and Twenex sys-
  2164.     tems use the JSYS machine instruction (q.v.),  which  is
  2165.     halfway  between  a legal machine instruction and a UUO,
  2166.     since KA-10 Tenices implement it as a hardware  instruc-
  2167.     tion  which  can  be used as an ordinary subroutine call
  2168.     (sort of a "pure JSR").
  2169.  
  2170. VANILLA adj. Ordinary flavor, standard.  See  FLAVOR.   When
  2171.  
  2172.  
  2173.  
  2174.  
  2175.  
  2176.  
  2177.  
  2178.  
  2179.  
  2180.                            - 34 -
  2181.  
  2182.  
  2183.     used  of food, very often does not mean that the food is
  2184.     flavored with vanilla extract!  For  example,  "vanilla-
  2185.     flavored  wonton soup" (or simply "vanilla wonton soup")
  2186.     means ordinary wonton soup, as opposed to hot  and  sour
  2187.     wonton soup.
  2188.  
  2189. VAXEN [from "oxen," perhaps influenced by  "vixen"]  n.  pl.
  2190.     The plural of VAX (a DEC machine).
  2191.  
  2192. VIRGIN adj. Unused, in reference to an  instantiation  of  a
  2193.     program.   "Let's bring up a virgin system and see if it
  2194.     crashes again." Also, by extension, unused  buffers  and
  2195.     the like within a program.
  2196.  
  2197. VIRTUAL adj. 1. Common alternative to  LOGICAL  (q.v.),  but
  2198.     never  used with compass directions.  2.  Performing the
  2199.     functions of.  Virtual memory acts like real memory  but
  2200.     isn't.
  2201.  
  2202. VISIONARY n. One who hacks vision (in an AI context, such as
  2203.     the processing of visual images).
  2204.  
  2205. WALDO [probably taken from the story "Waldo,"  by  Heinlein,
  2206.     which is where the term was first used to mean a mechan-
  2207.     ical adjunct to a human limb] Used at Harvard,  particu-
  2208.     larly by Tom Cheatham and students, instead of FOOBAR as
  2209.     a meta-syntactic variable  and  general  nonsense  word.
  2210.     See FOO, BAR, FOOBAR, QUUX.
  2211.  
  2212. WALL [shortened form of  HELLO  WALL,  apparently  from  the
  2213.     phrase  "up  against  a blank wall"] (WPI) interj. 1. An
  2214.     indication of confusion, usually spoken with a quizzical
  2215.     tone.  "Wall??" 2. A request for further explication.
  2216.  
  2217. WALLPAPER n. A file containing  a  listing  (e.g.,  assembly
  2218.     listing)  or  transcript, esp. a file containing a tran-
  2219.     script of all or part of a login session.  (The idea was
  2220.     that  the  LPT  paper  for such listings was essentially
  2221.     good only for wallpaper, as evidenced at SAIL  where  it
  2222.     was  used  as  such to cover windows.)  Usage: not often
  2223.     used now, esp. since other systems have developed  other
  2224.     terms for it (e.g., PHOTO on TWENEX).  The term possibly
  2225.     originated on ITS, where the commands to begin  and  end
  2226.     transcript  files  are  still  :WALBEG and :WALEND, with
  2227.     default file DSK:WALL PAPER.
  2228.  
  2229. WATERBOTTLE SOCCER n. A deadly  sport  practiced  mainly  by
  2230.     Sussman's graduate students.  It, along with chair bowl-
  2231.     ing, is the most evident manifestation  of  the  "locker
  2232.     room atmosphere" said to reign in that sphere.  (Sussman
  2233.     doesn't approve.)  [As of 11/82, it's reported that  the
  2234.     sport  has  given  way to a new game called "disc-boot,"
  2235.     and Sussman even participates occasionally.]
  2236.  
  2237.  
  2238.  
  2239.  
  2240.  
  2241.  
  2242.  
  2243.  
  2244.  
  2245.  
  2246.                            - 35 -
  2247.  
  2248.  
  2249. WEDGED [from "head wedged up ass"] adj. To be  in  a  locked
  2250.     state,  incapable  of  proceeding  without  help.   (See
  2251.     GRONK.)  Often refers  to  humans  suffering  misconcep-
  2252.     tions.   "The swapper is wedged." This term is sometimes
  2253.     used as a synonym for DEADLOCKED (q.v.).
  2254.  
  2255. WHAT n.  The  question  mark  character  ("?").   See  QUES.
  2256.     Usage: rare, used particularly in conjunction with WOW.
  2257.  
  2258. WHEEL n. 1. A privilege bit that canonically allows the pos-
  2259.     sessor to perform any operation on a timesharing system,
  2260.     such as read or write any file on the system  regardless
  2261.     of  protections, change or or look at any address in the
  2262.     running  monitor,  crash  or  reload  the  system,   and
  2263.     kill/create  jobs  and  user  accounts.   The  term  was
  2264.     invented on the TENEX operating system, and carried over
  2265.     to  TOPS-20,  Xerox-IFS  and  others.   2.  A person who
  2266.     posses a wheel bit.  "We need to find a wheel to unwedge
  2267.     the hung tape drives."
  2268.  
  2269. WHEEL WARS [from LOTS at Stanford University] A period  dur-
  2270.     ing  which  student wheels hack each other by attempting
  2271.     to log each other out of the system, delete each other's
  2272.     files,  or otherwise wreak havoc, usually at the expense
  2273.     of the lesser users.
  2274.  
  2275. WIN [from MIT jargon] 1. v. To succeed.  A program  wins  if
  2276.     no unexpected conditions arise.  2. BIG WIN: n. Serendi-
  2277.     pity.  Emphatic forms: MOBY WIN,  SUPER  WIN,  HYPER-WIN
  2278.     (often used interjectively as a reply).  For some reason
  2279.     SUITABLE WIN is also common at MIT, usually in reference
  2280.     to a satisfactory solution to a problem.  See LOSE.
  2281.  
  2282. WINNAGE n. The situation when a  lossage  is  corrected,  or
  2283.     when  something  is  winning.   Quite rare.  Usage: also
  2284.     quite rare.
  2285.  
  2286. WINNER 1. n. An unexpectedly good situation,  program,  pro-
  2287.     grammer or person.  2. REAL WINNER: Often sarcastic, but
  2288.     also used as high praise.
  2289.  
  2290. WINNITUDE n. The quality of winning (as opposed to  WINNAGE,
  2291.     which  is the result of winning).  "That's really great!
  2292.     Boy, what winnitude!"
  2293.  
  2294. WIZARD n. 1. A person who  knows  how  a  complex  piece  of
  2295.     software or hardware works; someone who can find and fix
  2296.     his bugs in an emergency.  Rarely  used  at  MIT,  where
  2297.     HACKER  is  the preferred term.  2. A person who is per-
  2298.     mitted to do things forbidden to ordinary people,  e.g.,
  2299.     a  "net  wizard" on a TENEX may run programs which speak
  2300.     low-level host-imp protocol; an ADVENT  wizard  at  SAIL
  2301.     may play Adventure during the day.
  2302.  
  2303.  
  2304.  
  2305.  
  2306.  
  2307.  
  2308.  
  2309.  
  2310.  
  2311.  
  2312.                            - 36 -
  2313.  
  2314.  
  2315. WORMHOLE n. A location  in  a  monitor  which  contains  the
  2316.     address of a routine, with the specific intent of making
  2317.     it easy to substitute a different routine.  The  follow-
  2318.     ing  quote  comes from "Polymorphic Systems," vol. 2, p.
  2319.     54:
  2320.  
  2321.     "Any type of I/O device can be substituted for the stan-
  2322.     dard  device by loading a simple driver routine for that
  2323.     device  and  installing  its  address  in  one  of   the
  2324.     monitor's
  2325.     __________
  2326.     *The term has  been  used  to  describe  a  hypothetical
  2327.     astronomical  situation  where  a black hole connects to
  2328.     the of the universe.  When this happens, information can
  2329.     pass  through  the wormhole, in only one direction, much
  2330.     as pass down the monitor's wormholes."
  2331.  
  2332. WOW See EXCL.
  2333.  
  2334. XGP 1. n. Xerox Graphics Printer.  2. v. To print  something
  2335.     on the XGP.  "You shouldn't XGP such a large file."
  2336.  
  2337. XYZZY [from the Adventure game] adj. See PLUGH.
  2338.  
  2339. YOYO n. DEC service engineers' slang for UUO (q.v.).  Usage:
  2340.     rare  at  Stanford and MIT, has been found at random DEC
  2341.     installations.
  2342.  
  2343. YOYO MODE n. State in which the system is said to be when it
  2344.     rapidly  alternates  several  times between being up and
  2345.     being down.
  2346.  
  2347. YU-SHIANG WHOLE FISH n. The character gamma  (extended  SAIL
  2348.     ASCII  11),  which  with a loop in its tail looks like a
  2349.     fish.  Usage: used primarily by people on the  MIT  LISP
  2350.     Machine.   Tends  to  elicit incredulity from people who
  2351.     hear about it second-hand.
  2352.  
  2353. ZERO v. 1. To set to zero.  Usually said of small pieces  of
  2354.     data,  such  as  bits or words.  2. To erase; to discard
  2355.     all data from.  Said of  disks  and  directories,  where
  2356.     "zeroing"  need  not  involve  actually  writing  zeroes
  2357.     throughout the area being zeroed.
  2358.  
  2359.  
  2360.  
  2361.  
  2362.  
  2363.  
  2364.  
  2365.  
  2366.  
  2367.  
  2368.  
  2369.  
  2370.  
  2371.  
  2372.  
  2373.  
  2374. ---
  2375.  
  2376.  
  2377. 
  2378.