The Jargon File


The Jargon File
Introduction
How Jargon Works
How to Use the Lexicon

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [^a-zA-Z]

Appendix A --- Appendix B --- Appendix C

D. C. Power Lab

 n.  The former site of SAIL.  Hackers
   thought this was very funny because the obvious connection to
   electrical engineering was nonexistent -- the lab was named for a
   Donald C.  Power.  Compare Marginal_Hacks.

daemon

 /day'mn/ or /dee'mn/ n.  [from the mythological
   meaning, later rationalized as the acronym `Disk And Execution
   MONitor'] A program that is not invoked explicitly, but lies
   dormant waiting for some condition(s) to occur.  The idea is that
   the perpetrator of the condition need not be aware that a daemon is
   lurking (though often a program will commit an action only because
   it knows that it will implicitly invoke a daemon).  For example,
   under ITS writing a file on the LPT spooler's directory
   would invoke the spooling daemon, which would then print the file.
   The advantage is that programs wanting (in this example) files
   printed need neither compete for access to nor understand any
   idiosyncrasies of the LPT.  They simply enter their implicit
   requests and let the daemon decide what to do with them.  Daemons
   are usually spawned automatically by the system, and may either
   live forever or be regenerated at intervals.

   Daemon and demon are often used interchangeably, but seem to
   have distinct connotations.  The term `daemon' was introduced to
   computing by CTSS people (who pronounced it /dee'mon/) and
   used it to refer to what ITS called a dragon.  Although the
   meaning and the pronunciation have drifted, we think this glossary
   reflects current (1993) usage.

daemon book

 n.  "The Design and Implementation of the
   4.3BSD UNIX Operating System", by Samuel J. Leffler, Marshall Kirk
   McKusick, Michael J. Karels, and John S. Quarterman (Addison-Wesley
   Publishers, 1989, ISBN 0-201-06196-1) -- the standard reference
   book on the internals of BSD UNIX.  So called because the
   cover has a picture depicting a little devil (a visual play on
   daemon) in sneakers, holding a pitchfork (referring to one of
   the characteristic features of UNIX, the `fork(2)' system
   call).  Also known as the Devil_Book.

dahmum

 n.  [Usenet] The material of which protracted
   flame_wars, especially those about operating systems, are
   comprised. Homeomorphic to spam.  The term `dahmum' is
   derived from the name of a militant OS/2 advocate, and
   originated when an extensively crossposted OS/2-versus-Linux
   debate was fed through Dissociated_Press.

dangling pointer

 n.  A reference that doesn't actually lead
   anywhere (in C and some other languages, a pointer that doesn't
   actually point at anything valid).  Usually this happens because it
   formerly pointed to something that has moved or disappeared.  Used
   as jargon in a generalization of its techspeak meaning; for
   example, a local phone number for a person who has since moved to
   the other coast is a dangling pointer.

dark-side hacker

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

Datamation

 /day`t*-may'sh*n/ n.  A magazine that many
   hackers assume all suits read.  Used to question an unbelieved
   quote, as in "Did you read that in "Datamation?""  It used
   to publish something hackishly funny every once in a while, like
   the original paper on COME_FROM in 1973, and Ed Post's
   "Real Programmers Don't Use Pascal" ten years later, but it
   has since become much more exclusively suit-oriented and
   boring.

DAU

 /dow/ [German FidoNet] n.  German acronym for
   D"ummster Anzunehmender User (stupidest imaginable user).
   From the engineering-slang GAU for Gr"osster Anzunehmender
   Unfall, worst foreseeable accident, esp. of a LNG tank farm plant
   or something with similarly disastrous consequences.  In popular
   German, GAU is used only to refer to worst-case nuclear acidents
   such as a core meltdown. See cretin, fool, loser and
   weasel.

day mode

 n.  See phase (sense 1).  Used of people only.

dd

 /dee-dee/ vt.  [UNIX: from IBM JCL] Equivalent to
   cat or BLT.  Originally the name of a UNIX copy command
   with special options suitable for block-oriented devices; it was
   often used in heavy-handed system maintenance, as in "Let's
   `dd' the root partition onto a tape, then use the boot PROM to
   load it back on to a new disk".  The UNIX `dd(1)' was
   designed with a weird, distinctly non-UNIXy keyword option syntax
   reminiscent of IBM System/360 JCL (which had an elaborate DD
   `Dataset Definition' specification for I/O devices); though the
   command filled a need, the interface design was clearly a prank.
   The jargon usage is now very rare outside UNIX sites and now nearly
   obsolete even there, as `dd(1)' has been deprecated for a
   long time (though it has no exact replacement).  The term has been
   displaced by BLT or simple English `copy'.

DDT

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

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

   (The `tape' referred to was, incidentally, not magnetic but paper.)
   Sadly, this quotation was removed from later editions of the
   handbook after the suits took over and DEC became much more
   `businesslike'.

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

de-rezz

 /dee-rez'/  [from `de-resolve' via the movie
   "Tron"] (also `derez') 1. vi. To disappear or dissolve; the
   image that goes with it is of an object breaking up into raster
   lines and static and then dissolving.  Occasionally used of a
   person who seems to have suddenly `fuzzed out' mentally rather than
   physically.  Usage: extremely silly, also rare.  This verb was
   actually invented as *fictional* hacker jargon, and adopted in
   a spirit of irony by real hackers years after the fact.  2. vt. The
   Macintosh resource decompiler.  On a Macintosh, many program
   structures (including the code itself) are managed in small
   segments of the program file known as `resources'; `Rez' and
   `DeRez' are a pair of utilities for compiling and decompiling
   resource files.  Thus, decompiling a resource is `derezzing'.
   Usage: very common.

dead

 adj.  1. Non-functional; down; crashed.
   Especially used of hardware.  2. At XEROX PARC, software that is
   working but not undergoing continued development and support.
   3. Useless; inaccessible.  Antonym: `live'.  Compare dead_code
   .

dead code

 n.  Routines that can never be accessed because
   all calls to them have been removed, or code that cannot be reached
   because it is guarded by a control structure that provably must
   always transfer control somewhere else.  The presence of dead code
   may reveal either logical errors due to alterations in the program
   or significant changes in the assumptions and environment of the
   program (see also software_rot); a good compiler should report
   dead code so a maintainer can think about what it means.
   (Sometimes it simply means that an *extremely* defensive
   programmer has inserted can't_happen tests which really can't
   happen -- yet.)  Syn. grunge.  See also dead.

DEADBEEF

 /ded-beef/ n.  The hexadecimal word-fill pattern
   for freshly allocated memory (decimal -21524111) under a number of
   IBM environments, including the RS/6000.  Some modern debugging
   tools deliberately fill freed memory with this value as a way of
   converting heisenbugs into Bohr_bugs.  As in "Your
   program is DEADBEEF" (meaning gone, aborted, flushed from memory);
   if you start from an odd half-word boundary, of course, you have
   BEEFDEAD.  See also the anecdote under fool.

deadlock

 n.  1. [techspeak] A situation wherein two or more
   processes are unable to proceed because each is waiting for one of
   the others to do something.  A common example is a program
   communicating to a server, which may find itself waiting for output
   from the server before sending anything more to it, while the
   server is similarly waiting for more input from the controlling
   program before outputting anything.  (It is reported that this
   particular flavor of deadlock is sometimes called a `starvation
   deadlock', though the term `starvation' is more properly used for
   situations where a program can never run simply because it never
   gets high enough priority.  Another common flavor is
   `constipation', in which each process is trying to send stuff to
   the other but all buffers are full because nobody is reading
   anything.)  See deadly_embrace.  2. Also used of deadlock-like
   interactions between humans, as when two people meet in a narrow
   corridor, and each tries to be polite by moving aside to let the
   other pass, but they end up swaying from side to side without
   making any progress because they always move the same way at the
   same time.

deadly embrace

 n.  Same as deadlock, though usually
   used only when exactly two processes are involved.  This is the
   more popular term in Europe, while deadlock predominates in
   the United States.

death code

 n.  A routine whose job is to set everything in
   the computer -- registers, memory, flags, everything -- to zero,
   including that portion of memory where it is running; its last act
   is to stomp on its own "store zero" instruction.  Death code
   isn't very useful, but writing it is an interesting hacking
   challenge on architectures where the instruction set makes it
   possible, such as the PDP-8 (it has also been done on the DG Nova).

   Perhaps the ultimate death code is on the TI 990 series, where all
   registers are actually in RAM, and the instruction "store
   immediate 0" has the opcode "0". The PC will immediately wrap
   around core as many times as it can until a user hits HALT.  Any
   empty memory location is death code.  Worse, the manufacturer
   recommended use of this instruction in startup code (which would be
   in ROM and therefore survive).

Death Square

 n.  The corporate logo of Novell, the people
   who acquired USL after AT&T let go of it.  Coined by analogy with
   Death_Star, because many people believe that Novell is
   bungling the lead in UNIX systems exactly as AT&T did for many
   years.

Death Star

 n.  [from the movie "Star Wars"] 1. The
   AT&T corporate logo, which appears on computers sold by AT&T and
   bears an uncanny resemblance to the Death Star in the movie.  This
   usage is particularly common among partisans of BSD UNIX, who
   tend to regard the AT&T versions as inferior and AT&T as a bad guy.
   Copies still circulate of a poster printed by Mt. Xinu showing a
   starscape with a space fighter labeled 4.2 BSD streaking away from
   a broken AT&T logo wreathed in flames.  2. AT&T's internal
   magazine, "Focus", uses `death star' to describe an
   incorrectly done AT&T logo in which the inner circle in the top
   left is dark instead of light -- a frequent result of
   dark-on-light logo images.

DEC

: n.  Digital Equipment Corporation.  Before the
   killer_micro revolution of the late 1980s, hackerdom was
   closely symbiotic with DEC's pioneering timesharing machines.  The
   first of the group of cultures described by this lexicon nucleated
   around the PDP-1 (see TMRC.  Subsequently, the PDP-6,
   PDP-10, PDP-20, PDP-11 and VAX were all foci of
   large and important hackerdoms, and DEC machines long dominated the
   ARPANET and Internet machine population.  DEC was the technological
   leader of the minicomputer era (roughly 1967 to 1987), but its
   failure to embrace microcomputers and UNIX early cost it heavily in
   profits and prestige after silicon got cheap.  However, the
   microprocessor design tradition owes a heavy debt to the PDP-11
   instruction set, and every one of the major general-purpose
   microcomputer OSs so far (CP/M, MS-DOS, UNIX, OS/2) were either
   genetically descended from a DEC OS, or incubated on DEC hardware,
   or both.  Accordingly, DEC is still regarded with a certain wry
   affection even among many hackers too young to have grown up on DEC
   machines.  The contrast with IBM is instructive.

dec

 /dek/ v.  Verbal (and only rarely written) shorthand
   for decrement, i.e. `decrease by one'.  Especially used by
   assembly programmers, as many assembly languages have a `dec'
   mnemonic.  Antonym: inc.

DEC Wars

 n.  A 1983 Usenet posting by Alan Hastings and
   Steve Tarr spoofing the "Star Wars" movies in hackish terms.
   Some years later, ESR (disappointed by Hastings and Tarr's failure
   to exploit a great premise more thoroughly) posted a 3-times-longer
   complete rewrite called "UNIX WARS"; the two are often
   confused.

decay

 n.,vi  [from nuclear physics] An automatic conversion which
   is applied to most array-valued expressions in C; they `decay
   into' pointer-valued expressions pointing to the array's first
   element.  This term is borderline techspeak, but is not used in the
   official standard for the language.

DEChead

 /dek'hed/ n.  1. A DEC field_servoid.
   Not flattering.  2. [from `deadhead'] A Grateful Dead fan working
   at DEC.

deckle

 /dek'l/ n.  [from dec- and nybble; the original
   spelling seems to have been `decle'] Two nickles; 10
   bits.  Reported among developers for Mattel's GI 1600 (the
   Intellivision games processor), a chip with 16-bit-wide RAM but
   10-bit-wide ROM.  See nybble for other such terms.

DED

 /D-E-D/ n.  Dark-Emitting Diode (that is, a burned-out
   LED).  Compare SED, LER, write-only_memory.  In the
   early 1970s both Signetics and Texas instruments released DED spec
   sheets as AFJs (suggested uses included "as a power-off
   indicator").

deep hack mode

 n.  See hack_mode.

deep magic

 n.  [poss. from C. S. Lewis's "Narnia"
   books] An awesomely arcane technique central to a program or
   system, esp. one neither generally published nor available to
   hackers at large (compare black_art); one that could only have
   been composed by a true wizard.  Compiler optimization
   techniques and many aspects of OS design used to be deep_magic
   ; many techniques in cryptography, signal processing,
   graphics, and AI still are.  Compare heavy_wizardry.  Esp.
   found in comments of the form "Deep magic begins here...".
   Compare voodoo_programming.

deep space

 n.  1. Describes the notional location of any
   program that has gone off_the_trolley.  Esp. used of
   programs that just sit there silently grinding long after either
   failure or some output is expected.  "Uh oh.  I should have gotten
   a prompt ten seconds ago.  The program's in deep space somewhere."
   Compare buzz, catatonic, hyperspace.  2. The
   metaphorical location of a human so dazed and/or confused or caught
   up in some esoteric form of bogosity that he or she no longer
   responds coherently to normal communication.  Compare page_out
   .

defenestration

 n.  [from the traditional Czechoslovakian
   method of assassinating prime ministers, via SF fandom] 1. Proper
   karmic retribution for an incorrigible punster.  "Oh, ghod, that
   was *awful*!"  "Quick! Defenestrate him!"  2. The act of
   exiting a window system in order to get better response time from a
   full-screen program.  This comes from the dictionary meaning of
   `defenestrate', which is to throw something out a window.  3. The
   act of discarding something under the assumption that it will
   improve matters.  "I don't have any disk space left."  "Well,
   why don't you defenestrate that 100 megs worth of old core dumps?"
   4. [proposed] The requirement to support a command-line interface.
   "It has to run on a VT100."  "Curses!  I've been
   defenestrated!"

defined as

 adj.  In the role of, usually in an
   organization-chart sense.  "Pete is currently defined as bug
   prioritizer."  Compare logical.

dehose

 /dee-hohz/ vt.  To clear a hosed condition.

delint

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

delta

 n.  1. [techspeak] A quantitative change, especially a
   small or incremental one (this use is general in physics and
   engineering).  "I just doubled the speed of my program!"  "What
   was the delta on program size?"  "About 30 percent."  (He
   doubled the speed of his program, but increased its size by only 30
   percent.)  2. [UNIX] A diff, especially a diff stored
   under the set of version-control tools called SCCS (Source Code
   Control System) or RCS (Revision Control System).  3. n. A small
   quantity, but not as small as epsilon.  The jargon usage of
   delta and epsilon stems from the traditional use of these
   letters in mathematics for very small numerical quantities,
   particularly in `epsilon-delta' proofs in limit theory (as in the
   differential calculus).  The term delta is often used, once
   epsilon has been mentioned, to mean a quantity that is
   slightly bigger than epsilon but still very small.  "The cost
   isn't epsilon, but it's delta" means that the cost isn't totally
   negligible, but it is nevertheless very small.  Common
   constructions include `within delta of ---', `within epsilon of
   ---': that is, `close to' and `even closer to'.

demented

 adj.  Yet another term of disgust used to describe
   a program.  The connotation in this case is that the program works
   as designed, but the design is bad.  Said, for example, of a
   program that generates large numbers of meaningless error messages,
   implying that it is on the brink of imminent collapse.  Compare
   wonky, bozotic.

demigod

 n.  A hacker with years of experience, a national
   reputation, and a major role in the development of at least one
   design, tool, or game used by or known to more than half of the
   hacker community.  To qualify as a genuine demigod, the person must
   recognizably identify with the hacker community and have helped
   shape it.  Major demigods include Ken Thompson and Dennis Ritchie
   (co-inventors of UNIX and C), Richard M. Stallman
   (inventor of EMACS), and Linus Torvalds (inventor of Linux).
   In their hearts of hearts, most hackers dream of someday becoming
   demigods themselves, and more than one major software project has
   been driven to completion by the author's veiled hopes of
   apotheosis.  See also net.god, true-hacker.

demo

 /de'moh/  [short for `demonstration'] 1. v. To
   demonstrate a product or prototype.  A far more effective way of
   inducing bugs to manifest than any number of test runs,
   especially when important people are watching.  2. n. The act of
   demoing.  "I've gotta give a demo of the drool-proof interface;
   how does it work again?"  3. n. Esp. as `demo version', can
   refer either to an early, barely-functional version of a program
   which can be used for demonstration purposes as long as the
   operator uses *exactly* the right commands and skirts its numerous
   bugs, deficiencies, and unimplemented portions, or to a special
   version of a program (frequently with some features crippled) which
   is distributed at little or no cost to the user for enticement
   purposes.

demo mode

 n.  1. [Sun] The state of being heads_down
   in order to finish code in time for a demo, usually due
   yesterday.  2. A mode in which video games sit by themselves
   running through a portion of the game, also known as `attract
   mode'.  Some serious apps have a demo mode they use as a
   screen saver, or may go through a demo mode on startup (for
   example, the Microsoft Windows opening screen -- which lets you
   impress your neighbors without actually having to put up with
   Microsloth_Windows).

demon

 n.  1. [MIT] A portion of a program that is not
   invoked explicitly, but that lies dormant waiting for some
   condition(s) to occur.  See daemon.  The distinction is that
   demons are usually processes within a program, while daemons are
   usually programs running on an operating system.  2. [outside MIT]
   Often used equivalently to daemon -- especially in the
   UNIX world, where the latter spelling and pronunciation is
   considered mildly archaic.

   Demons in sense 1 are particularly common in AI programs.  For
   example, a knowledge-manipulation program might implement inference
   rules as demons.  Whenever a new piece of knowledge was added,
   various demons would activate (which demons depends on the
   particular piece of data) and would create additional pieces of
   knowledge by applying their respective inference rules to the
   original piece.  These new pieces could in turn activate more
   demons as the inferences filtered down through chains of logic.
   Meanwhile, the main program could continue with whatever its
   primary task was.

demon dialer

 n.  A program which repeatedly calls the same
   telephone number.  Demon dialing may be benign (as when a number of
   communications programs contend for legitimate access to a BBS
   line) or malign (that is, used as a prank or denial-of-service
   attack).  This term dates from the blue_box days of the 1970s
   and early 1980s and is now semi-obsolescent among phreakers;
   see war_dialer for its contemporary progeny.

depeditate

 /dee-ped'*-tayt/ n.  [by (faulty) analogy with
   `decapitate'] Humorously, to cut off the feet of.  When one is
   using some computer-aided typesetting tools, careless placement of
   text blocks within a page or above a rule can result in chopped-off
   letter descenders.  Such letters are said to have been depeditated.

deprecated

 adj.  Said of a program or feature that is
   considered obsolescent and in the process of being phased out,
   usually in favor of a specified replacement.  Deprecated features
   can, unfortunately, linger on for many years.  This term appears
   with distressing frequency in standards documents when the
   committees writing the documents realize that large amounts of
   extant (and presumably happily working) code depend on the
   feature(s) that have passed out of favor.  See also dusty_deck
   .

derf

 v.,n.  [PLATO] The act of exploiting a terminal which
   someone else has absent-mindedly left logged on, to use that
   person's account, especially to post articles intended to make an
   ass of the victim you're impersonating.

deserves to lose

 adj.  Said of someone who willfully does
   the Wrong_Thing; humorously, if one uses a feature known to be
   marginal.  What is meant is that one deserves the consequences
   of one's losing actions.  "Boy, anyone who tries to use
   mess-dos deserves to lose!" (ITS fans used to say
   the same thing of UNIX; many still do.)  See also screw,
   chomp, bagbiter.

desk check

 n.,v.  To grovel over hardcopy of source
   code, mentally simulating the control flow; a method of catching
   bugs.  No longer common practice in this age of on-screen editing,
   fast compiles, and sophisticated debuggers -- though some maintain
   stoutly that it ought to be.  Compare eyeball_search,
   vdiff, vgrep.

despew

 /d*-spyoo'/ v.  [Usenet] To automatically generate
   a large amount of garbage to the net, esp. from an automated
   posting program gone wild.  See ARMM.

Devil Book

 n.  See daemon_book, the term preferred by
   its authors.

devo

 /dee'voh/ n.  [orig. in-house jargon at Symbolics] A
   person in a development group.  See also doco and mango.

dickless workstation

 n.  Extremely pejorative hackerism for
   `diskless workstation', a class of botches including the Sun 3/50
   and other machines designed exclusively to network with an
   expensive central disk server.  These combine all the disadvantages
   of time-sharing with all the disadvantages of distributed personal
   computers; typically, they cannot even boot themselves without
   help (in the form of some kind of breath-of-life_packet) from
   the server.

dictionary flame

 n.  [Usenet] An attempt to sidetrack a
   debate away from issues by insisting on meanings for key terms that
   presuppose a desired conclusion or smuggle in an implicit premise.
   A common tactic of people who prefer argument over definitions to
   disputes about reality.  Compare spelling_flame.

diddle

  1. vt. To work with or modify in a not particularly
   serious manner.  "I diddled a copy of ADVENT so it didn't
   double-space all the time."  "Let's diddle this piece of code and
   see if the problem goes away."  See tweak and twiddle.
   2. n. The action or result of diddling.  See also tweak,
   twiddle, frob.

die

 v.  Syn. crash.  Unlike crash, which is used
   primarily of hardware, this verb is used of both hardware and
   software.  See also go_flatline, casters-up_mode.

die horribly

 v.  The software equivalent of crash_and_burn
   , and the preferred emphatic form of die.  "The
   converter choked on an FF in its input and died horribly".

diff

 /dif/ n.  1. A change listing, especially giving
   differences between (and additions to) source code or documents
   (the term is often used in the plural `diffs').  "Send me your
   diffs for the Jargon File!"  Compare vdiff.  2. Specifically,
   such a listing produced by the `diff(1)' command, esp. when
   used as specification input to the `patch(1)' utility (which
   can actually perform the modifications; see patch).  This is a
   common method of distributing patches and source updates in the
   UNIX/C world.  3. v. To compare (whether or not by use of automated
   tools on machine-readable files); see also vdiff, mod.

digit

 n.  An employee of Digital Equipment Corporation.  See
   also VAX, VMS, PDP-10, TOPS-10, DEChead,
   double_DECkers, field_circus.

dike

 vt.  To remove or disable a portion of something, as a
   wire from a computer or a subroutine from a program.  A standard
   slogan is "When in doubt, dike it out".  (The implication is that
   it is usually more effective to attack software problems by
   reducing complexity than by increasing it.)  The word `dikes' is
   widely used among mechanics and engineers to mean `diagonal
   cutters', esp. the heavy-duty metal-cutting version, but may also
   refer to a kind of wire-cutters used by electronics techs.  To
   `dike something out' means to use such cutters to remove
   something.  Indeed, the TMRC Dictionary defined dike as "to attack
   with dikes".  Among hackers this term has been metaphorically
   extended to informational objects such as sections of code.

ding

 n.,vi.  1. Synonym for feep.  Usage: rare among
   hackers, but commoner in the Real_World.  2. `dinged': What
   happens when someone in authority gives you a minor bitching about
   something, esp. something trivial.  "I was dinged for having a
   messy desk."

dink

 /dink/ adj.  Said of a machine that has the bitty_box
    nature; a machine too small to be worth bothering with ---
   sometimes the system you're currently forced to work on.  First
   heard from an MIT hacker working on a CP/M system with 64K, in
   reference to any 6502 system, then from fans of 32-bit
   architectures about 16-bit machines.  "GNUMACS will never work on
   that dink machine."  Probably derived from mainstream `dinky',
   which isn't sufficiently pejorative.  See macdink.

dinosaur

 n.  1. Any hardware requiring raised flooring and
   special power.  Used especially of old minis and mainframes, in
   contrast with newer microprocessor-based machines.  In a famous
   quote from the 1988 UNIX EXPO, Bill Joy compared the liquid-cooled
   mainframe in the massive IBM display with a grazing dinosaur "with
   a truck outside pumping its bodily fluids through it".  IBM was
   not amused.  Compare big_iron; see also mainframe.
   2. [IBM] A very conservative user; a zipperhead.

dinosaur pen

 n.  A traditional mainframe computer room
   complete with raised flooring, special power, its own
   ultra-heavy-duty air conditioning, and a side order of Halon fire
   extinguishers.  See boa.

dinosaurs mating

 n.  Said to occur when yet another big_iron
    merger or buyout occurs; reflects a perception by hackers
   that these signal another stage in the long, slow dying of the
   mainframe industry.  In its glory days of the 1960s, it was
   `IBM and the Seven Dwarves': Burroughs, Control Data, General
   Electric, Honeywell, NCR, RCA, and Univac.  RCA and GE sold out
   early, and it was `IBM and the Bunch' (Burroughs, Univac, NCR,
   Control Data, and Honeywell) for a while.  Honeywell was bought out
   by Bull; Burroughs merged with Univac to form Unisys (in 1984 ---
   this was when the phrase `dinosaurs mating' was coined); and in
   1991 AT&T absorbed NCR.  More such earth-shaking unions of doomed
   giants seem inevitable.

dirtball

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

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

dirty power

 n.  Electrical mains voltage that is unfriendly
   to the delicate innards of computers.  Spikes, drop-outs,
   average voltage significantly higher or lower than nominal, or just
   plain noise can all cause problems of varying subtlety and severity
   (these are collectively known as power_hits).

disclaimer

 n.  [Usenet] Statement ritually appended to many
   Usenet postings (sometimes automatically, by the posting software)
   reiterating the fact (which should be obvious, but is easily
   forgotten) that the article reflects its author's opinions and not
   necessarily those of the organization running the machine through
   which the article entered the network.

Discordianism

 /dis-kor'di-*n-ism/ n.  The veneration of
   Eris, a.k.a. Discordia; widely popular among hackers.
   Discordianism was popularized by Robert Shea and Robert Anton
   Wilson's novel "Illuminatus!" as a sort of
   self-subverting Dada-Zen for Westerners -- it should on no account
   be taken seriously but is far more serious than most jokes.
   Consider, for example, the Fifth Commandment of the Pentabarf, from
   "Principia Discordia": "A Discordian is Prohibited of
   Believing What he Reads."  Discordianism is usually connected with
   an elaborate conspiracy theory/joke involving millennia-long
   warfare between the anarcho-surrealist partisans of Eris and a
   malevolent, authoritarian secret society called the Illuminati.
   See Religion in Appendix B, Church_of_the_SubGenius
   , and ha_ha_only_serious.

disk farm

 n.  (also laundromat) A large room or rooms
   filled with disk drives (esp. washing_machines).

display hack

 n.  A program with the same approximate purpose
   as a kaleidoscope: to make pretty pictures.  Famous display hacks
   include munching_squares, smoking_clover, the BSD UNIX
   `rain(6)' program, `worms(6)' on miscellaneous UNIXes,
   and the X `kaleid(1)' program.  Display hacks can also be
   implemented without programming by creating text files containing
   numerous escape sequences for interpretation by a video terminal;
   one notable example displayed, on any VT100, a Christmas tree with
   twinkling lights and a toy train circling its base.  The hack_value
    of a display hack is proportional to the esthetic value of
   the images times the cleverness of the algorithm divided by the
   size of the code.  Syn. psychedelicware.

Dissociated Press

 n.  [play on `Associated Press'; perhaps
   inspired by a reference in the 1949 Bugs Bunny cartoon
   "What's Up, Doc?"] An algorithm for transforming any text
   into potentially humorous garbage even more efficiently than by
   passing it through a marketroid.  The algorithm starts by
   printing any N consecutive words (or letters) in the text.
   Then at every step it searches for any random occurrence in the
   original text of the last N words (or letters) already
   printed and then prints the next word or letter.  EMACS has a
   handy command for this.  Here is a short example of word-based
   Dissociated Press applied to an earlier version of this Jargon
   File:

     wart: n. A small, crocky feature that sticks out of an array (C
     has no checks for this).  This is relatively benign and easy to
     spot if the phrase is bent so as to be not worth paying attention
     to the medium in question.

   Here is a short example of letter-based Dissociated Press applied
   to the same source:

     window sysIWYG: n. A bit was named aften /bee't*/ prefer to use
     the other guy's re, especially in every cast a chuckle on
     neithout getting into useful informash speech makes removing a
     featuring a move or usage actual abstractionsidered
     interj. Indeed spectace logic or problem!

   A hackish idle pastime is to apply letter-based Dissociated Press
   to a random body of text and vgrep the output in hopes of finding
   an interesting new word.  (In the preceding example, `window
   sysIWYG' and `informash' show some promise.)  Iterated applications
   of Dissociated Press usually yield better results.  Similar
   techniques called `travesty generators' have been employed with
   considerable satirical effect to the utterances of Usenet flamers;
   see pseudo.

distribution

 n.  1. A software source tree packaged for
   distribution; but see kit.  2. A vague term encompassing
   mailing lists and Usenet newsgroups (but not BBS fora);
   any topic-oriented message channel with multiple recipients.  3. An
   information-space domain (usually loosely correlated with
   geography) to which propagation of a Usenet message is restricted;
   a much-underutilized feature.

disusered

 adj.  [Usenet] Said of a person whose account on a
   computer has been removed, esp. for cause rather than through
   normal attrition.  "He got disusered when they found out he'd been
   cracking through the school's Internet access."  The verbal form
   `disuser' is live but less common.  Both usages probably derive
   from the DISUSER account status flag on VMS; setting it disables
   the account.  Compare star_out.

do protocol

 vi.  [from network protocol programming] To
   perform an interaction with somebody or something that follows a
   clearly defined procedure.  For example, "Let's do protocol with
   the check" at a restaurant means to ask for the check, calculate
   the tip and everybody's share, collect money from everybody,
   generate change as necessary, and pay the bill.  See protocol.

doc

 /dok/ n.  Common spoken and written shorthand for
   `documentation'.  Often used in the plural `docs' and in the
   construction `doc file' (i.e., documentation available on-line).

doco

 /do'koh/ n.  [orig. in-house jargon at Symbolics] A
   documentation writer.  See also devo and mango.

documentation

: n.  The multiple kilograms of macerated,
   pounded, steamed, bleached, and pressed trees that accompany most
   modern software or hardware products (see also tree-killer).
   Hackers seldom read paper documentation and (too) often resist
   writing it; they prefer theirs to be terse and on-line.  A common
   comment on this predilection is "You can't grep dead trees".
   See drool-proof_paper, verbiage, treeware.

dodgy

 adj.  Syn. with flaky.  Preferred outside the
   U.S.

dogcow

 /dog'kow/ n.  See Moof.  The dogcow is a
   semi-legendary creature that lurks in the depths of the Macintosh
   Technical Notes Hypercard stack V3.1.  The full story of the dogcow
   is told in technical note #31 (the particular Moof illustrated is
   properly named `Clarus').  Option-shift-click will cause it to emit
   a characteristic `Moof!' or `!fooM' sound.  *Getting* to tech
   note 31 is the hard part; to discover how to do that, one must
   needs examine the stack script with a hackerly eye.  Clue:
   rot13 is involved.  A dogcow also appears if you choose `Page
   Setup...' with a LaserWriter selected and click on the
   `Options' button.

dogpile

 v.  [Usenet: prob. fr. mainstream "puppy pile"]
   When many people post unfriendly responses in short order to a
   single posting, they are sometimes said to "dogpile" or "dogpile
   on" the person to whom they're responding.  For example, when a
   religious missionary posts a simplistic appeal to alt.atheism,
   he can expect to be dogpiled.

dogwash

 /dog'wosh/  [From a quip in the `urgency' field
   of a very optional software change request, ca. 1982.  It was
   something like "Urgency: Wash your dog first".] 1. n. A project
   of minimal priority, undertaken as an escape from more serious
   work.  2. v.  To engage in such a project.  Many games and much
   freeware get written this way.

domainist

 /doh-mayn'ist/ adj.  1. Said of an Internet_address
    (as opposed to a bang_path) because the part to the
   right of the `@' specifies a nested series of `domains';
   for example, esr@snark.thyrsus.com specifies the machine
   called snark in the subdomain called thyrsus within the
   top-level domain called com.  See also big-endian, sense
   2.  2. Said of a site, mailer, or routing program which knows how
   to handle domainist addresses.  3. Said of a person (esp. a site
   admin) who prefers domain addressing, supports a domainist mailer,
   or proselytizes for domainist addressing and disdains bang_path
   s.  This term is now (1993) semi-obsolete, as most sites have
   converted.

Don't do that, then!

  [from an old doctor's office joke
   about a patient with a trivial complaint] Stock response to a user
   complaint.  "When I type control-S, the whole system comes to a
   halt for thirty seconds."  "Don't do that, then!" (or "So don't
   do that!").  Compare RTFM.

dongle

 /dong'gl/ n.  1. A security or copy_protection
   device for commercial microcomputer programs consisting of a
   serialized EPROM and some drivers in a D-25 connector shell, which
   must be connected to an I/O port of the computer while the program
   is run.  Programs that use a dongle query the port at startup and
   at programmed intervals thereafter, and terminate if it does not
   respond with the dongle's programmed validation code.  Thus, users
   can make as many copies of the program as they want but must pay
   for each dongle.  The idea was clever, but it was initially a
   failure, as users disliked tying up a serial port this way.  Almost
   all dongles on the market today (1993) will pass data through the
   port and monitor for magic codes (and combinations of status
   lines) with minimal if any interference with devices further down
   the line -- this innovation was necessary to allow daisy-chained
   dongles for multiple pieces of software.  The devices are still not
   widely used, as the industry has moved away from copy-protection
   schemes in general.  2. By extension, any physical electronic key
   or transferable ID required for a program to function.  Common
   variations on this theme have used parallel or even joystick ports.
   See dongle-disk.

   [Note: in early 1992, advertising copy from Rainbow Technologies (a
   manufacturer of dongles) included a claim that the word derived
   from "Don Gall", allegedly the inventor of the device.  The
   company's receptionist will cheerfully tell you that the story is a
   myth invented for the ad copy.  Nevertheless, I expect it to haunt
   my life as a lexicographer for at least the next ten years. ---
   ESR]

dongle-disk

 /don'gl disk/ n.  A special floppy disk that
   is required in order to perform some task.  Some contain special
   coding that allows an application to identify it uniquely, others
   *are* special code that does something that normally-resident
   programs don't or can't.  (For example, AT&T's "Unix PC" would
   only come up in root_mode with a special boot disk.)  Also
   called a `key disk'.  See dongle.

donuts

 n.obs.  A collective noun for any set of memory bits.
   This usage is extremely archaic and may no longer be live jargon;
   it dates from the days of ferrite-core memories in which each
   bit was implemented by a doughnut-shaped magnetic flip-flop.

doorstop

 n.  Used to describe equipment that is
   non-functional and halfway expected to remain so, especially
   obsolete equipment kept around for political reasons or ostensibly
   as a backup.  "When we get another Wyse-50 in here, that ADM 3
   will turn into a doorstop."  Compare boat_anchor.

dot file

 [UNIX] n.  A file that is not visible by default to
   normal directory-browsing tools (on UNIX, files named with a
   leading dot are, by convention, not normally presented in directory
   listings).  Many programs define one or more dot files in which
   startup or configuration information may be optionally recorded; a
   user can customize the program's behavior by creating the
   appropriate file in the current or home directory.  (Therefore, dot
   files tend to creep -- with every nontrivial application
   program defining at least one, a user's home directory can be
   filled with scores of dot files, of course without the user's
   really being aware of it.)  See also profile (sense 1), rc_file
   .

double bucky

 adj.  Using both the CTRL and META keys.  "The
   command to burn all LEDs is double bucky F."

   This term originated on the Stanford extended-ASCII keyboard, and
   was later taken up by users of the space-cadet_keyboard at
   MIT.  A typical MIT comment was that the Stanford bucky_bits
   (control and meta shifting keys) were nice, but there weren't
   enough of them; you could type only 512 different characters on a
   Stanford keyboard.  An obvious way to address this was simply to
   add more shifting keys, and this was eventually done; but a
   keyboard with that many shifting keys is hard on touch-typists, who
   don't like to move their hands away from the home position on the
   keyboard.  It was half-seriously suggested that the extra shifting
   keys be implemented as pedals; typing on such a keyboard would be
   very much like playing a full pipe organ.  This idea is mentioned
   in a parody of a very fine song by Jeffrey Moss called
   "Rubber Duckie", which was published in "The Sesame
   Street Songbook" (Simon and Schuster 1971, ISBN 0-671-21036-X).
   These lyrics were written on May 27, 1978, in celebration of the
   Stanford keyboard:

     			Double Bucky

     	Double bucky, you're the one!
     	You make my keyboard lots of fun.
     	    Double bucky, an additional bit or two:
     	(Vo-vo-de-o!)
     	Control and meta, side by side,
     	Augmented ASCII, nine bits wide!
     	    Double bucky!  Half a thousand glyphs, plus a few!
     		Oh,
     		I sure wish that I
     		Had a couple of
     		    Bits more!
     		Perhaps a
     		Set of pedals to
     		Make the number of
     		    Bits four:
     		Double double bucky!
     	Double bucky, left and right
     	OR'd together, outta sight!
     	    Double bucky, I'd like a whole word of
     	    Double bucky, I'm happy I heard of
     	    Double bucky, I'd like a whole word of you!

     	--- The Great Quux (with apologies to Jeffrey Moss)

   [This, by the way, is an excellent example of computer filk
   -- ESR] See also meta_bit, cokebottle, and quadruple_bucky
   .

double DECkers

 n.  Used to describe married couples in which
   both partners work for Digital Equipment Corporation.

doubled sig

 [Usenet] n.  A sig_block that has been
   included twice in a Usenet article or, less commonly, in an
   electronic mail message.  An article or message with a doubled sig
   can be caused by improperly configured software.  More often,
   however, it reveals the author's lack of experience in electronic
   communication.  See B1FF, pseudo.

down

  1. adj. Not operating.  "The up escalator is down"
   is considered a humorous thing to say, and "The elevator is down"
   always means "The elevator isn't working" and never refers to
   what floor the elevator is on.  With respect to computers, this
   term has passed into the mainstream; the extension to other kinds
   of machine is still hackish.  2. `go down' vi. To stop
   functioning; usually said of the system.  The message from the
   console that every hacker hates to hear from the operator is
   "System going down in 5 minutes".  3. `take down', `bring
   down' vt. To deactivate purposely, usually for repair work or
   PM.  "I'm taking the system down to work on that bug in the
   tape drive."  Occasionally one hears the word `down' by itself
   used as a verb in this vt. sense.  See crash; oppose up.

download

 vt.  To transfer data or (esp.) code from a
   larger `host' system (esp. a mainframe) over a digital
   comm link to a smaller `client' system, esp. a microcomputer
   or specialized peripheral.  Oppose upload.

   However, note that ground-to-space communications has its own usage
   rule for this term.  Space-to-earth transmission is always `down'
   and the reverse `up' regardless of the relative size of the
   computers involved.  So far the in-space machines have invariably
   been smaller; thus the upload/download distinction has been
   reversed from its usual sense.

DP

 /D-P/ n.  1. Data Processing.  Listed here because,
   according to hackers, use of the term marks one immediately as a
   suit.  See DPer.  2. Common abbrev for Dissociated_Press
   .

DPB

 /d*-pib'/ vt.  [from the PDP-10 instruction set] To
   plop something down in the middle.  Usage: silly.  "DPB yourself
   into that couch there."  The connotation would be that the couch
   is full except for one slot just big enough for one last person to
   sit in.  DPB means `DePosit Byte', and was the name of a PDP-10
   instruction that inserts some bits into the middle of some other
   bits.  Hackish usage has been kept alive by the Common LISP
   function of the same name.

DPer

 /dee-pee-er/ n.  Data Processor.  Hackers are
   absolutely amazed that suits use this term self-referentially.
   *Computers* process data, not people!  See DP.

dragon

 n.  [MIT] A program similar to a daemon, except
   that it is not invoked at all, but is instead used by the system to
   perform various secondary tasks.  A typical example would be an
   accounting program, which keeps track of who is logged in,
   accumulates load-average statistics, etc.  Under ITS, many
   terminals displayed a list of people logged in, where they were,
   what they were running, etc., along with some random picture (such
   as a unicorn, Snoopy, or the Enterprise), which was generated by
   the `name dragon'.  Usage: rare outside MIT -- under UNIX and most
   other OSes this would be called a `background demon' or
   daemon.  The best-known UNIX example of a dragon is
   `cron(1)'.  At SAIL, they called this sort of thing a
   `phantom'.

Dragon Book

 n.  The classic text "Compilers:
   Principles, Techniques and Tools", by Alfred V. Aho, Ravi Sethi,
   and Jeffrey D.  Ullman (Addison-Wesley 1986; ISBN 0-201-10088-6),
   so called because of the cover design featuring a dragon labeled
   `complexity of compiler design' and a knight bearing the lance
   `LALR parser generator' among his other trappings.  This one is
   more specifically known as the `Red Dragon Book' (1986); an earlier
   edition, sans Sethi and titled "Principles Of Compiler Design"
   (Alfred V. Aho and Jeffrey D. Ullman; Addison-Wesley, 1977; ISBN
   0-201-00022-9), was the `Green Dragon Book' (1977).  (Also `New
   Dragon Book', `Old Dragon Book'.)  The horsed knight and the
   Green Dragon were warily eying each other at a distance; now the
   knight is typing (wearing gauntlets!) at a terminal showing a
   video-game representation of the Red Dragon's head while the rest
   of the beast extends back in normal space.  See also book_titles
   .

drain

 v.  [IBM] Syn. for flush (sense 2).  Has a
   connotation of finality about it; one speaks of draining a device
   before taking it offline.

dread high-bit disease

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

DRECNET

 /drek'net/ n.  [from Yiddish/German `dreck',
   meaning filth] Deliberate distortion of DECNET, a networking
   protocol used in the VMS community.  So called because DEC
   helped write the Ethernet specification and then (either stupidly
   or as a malignant customer-control tactic) violated that spec in
   the design of DRECNET in a way that made it incompatible.  See also
   connector_conspiracy.

driver

 n.  1. The main_loop of an event-processing
   program; the code that gets commands and dispatches them for
   execution.  2. [techspeak] In `device driver', code designed to
   handle a particular peripheral device such as a magnetic disk or
   tape unit.  3. In the TeX world and the computerized typesetting
   world in general, a program that translates some device-independent
   or other common format to something a real device can actually
   understand.

droid

 n.  [from `android', SF terminology for a humanoid
   robot of essentially biological (as opposed to
   mechanical/electronic) construction] A person (esp. a
   low-level bureaucrat or service-business employee) exhibiting most
   of the following characteristics: (a) naive trust in the wisdom of
   the parent organization or `the system'; (b) a blind-faith
   propensity to believe obvious nonsense emitted by authority figures
   (or computers!); (c) a rule-governed mentality, one unwilling or
   unable to look beyond the `letter of the law' in exceptional
   situations; (d) a paralyzing fear of official reprimand or worse if
   Procedures are not followed No Matter What; and (e) no interest in
   doing anything above or beyond the call of a very
   narrowly-interpreted duty, or in particular in fixing that which is
   broken; an "It's not my job, man" attitude.

   Typical droid positions include supermarket checkout assistant and
   bank clerk; the syndrome is also endemic in low-level government
   employees.  The implication is that the rules and official
   procedures constitute software that the droid is executing;
   problems arise when the software has not been properly debugged.
   The term `droid mentality' is also used to describe the mindset
   behind this behavior. Compare suit, marketroid; see
   -oid.

drool-proof paper

 n.  Documentation that has been
   obsessively dumbed_down, to the point where only a cretin
   could bear to read it, is said to have succumbed to the
   `drool-proof paper syndrome' or to have been `written on
   drool-proof paper'.  For example, this is an actual quote from
   Apple's LaserWriter manual: "Do not expose your LaserWriter to
   open fire or flame."

drop on the floor

 vt.  To react to an error condition by
   silently discarding messages or other valuable data.  "The gateway
   ran out of memory, so it just started dropping packets on the
   floor."  Also frequently used of faulty mail and netnews relay
   sites that lose messages.  See also black_hole, bit_bucket
   .

drop-ins

 n.  [prob. by analogy with drop-outs]
   Spurious characters appearing on a terminal or console as a result
   of line noise or a system malfunction of some sort.  Esp. used
   when these are interspersed with one's own typed input.  Compare
   drop-outs, sense 2.

drop-outs

 n.  1. A variety of `power glitch' (see
   glitch); momentary 0 voltage on the electrical mains.
   2. Missing characters in typed input due to software malfunction or
   system saturation (one cause of such behavior under UNIX when a bad
   connection to a modem swamps the processor with spurious character
   interrupts; see screaming_tty).  3. Mental glitches; used as a
   way of describing those occasions when the mind just seems to shut
   down for a couple of beats.  See glitch, fried.

drugged

 adj.  (also `on drugs') 1. Conspicuously stupid,
   heading toward brain-damaged.  Often accompanied by a
   pantomime of toking a joint.  2. Of hardware, very slow relative to
   normal performance.

drum

 adj, n.  Ancient techspeak term referring to slow,
   cylindrical magnetic media that were once state-of-the-art storage
   devices.  Under BSD UNIX the disk partition used for swapping is
   still called `/dev/drum'; this has led to considerable humor
   and not a few straight-faced but utterly bogus `explanations'
   getting foisted on newbies.  See also "The_Story_of_Mel,_a_Real_Programmer
   " in Appendix A.

drunk mouse syndrome

 n.  (also `mouse on drugs') A malady
   exhibited by the mouse pointing device of some computers.  The
   typical symptom is for the mouse cursor on the screen to move in
   random directions and not in sync with the motion of the actual
   mouse.  Can usually be corrected by unplugging the mouse and
   plugging it back again.  Another recommended fix for optical mice
   is to rotate your mouse pad 90 degrees.

   At Xerox PARC in the 1970s, most people kept a can of copier
   cleaner (isopropyl alcohol) at their desks.  When the steel ball on
   the mouse had picked up enough cruft to be unreliable, the
   mouse was doused in cleaner, which restored it for a while.
   However, this operation left a fine residue that accelerated the
   accumulation of cruft, so the dousings became more and more
   frequent.  Finally, the mouse was declared `alcoholic' and sent
   to the clinic to be dried out in a CFC ultrasonic bath.

Duff's device

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

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

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

   Shocking though it appears to all who encounter it for the first
   time, the device is actually perfectly valid, legal C.  C's default
   fall_through in case statements has long been its most
   controversial single feature; Duff observed that "This code forms
   some sort of argument in that debate, but I'm not sure whether it's
   for or against."

   [For maximal obscurity, the outermost pair of braces above could be
   actually be removed -- GLS]

dumb terminal

 n.  A terminal that is one step above a
   glass_tty, having a minimally addressable cursor but no
   on-screen editing or other features normally supported by a
   smart_terminal.  Once upon a time, when glass ttys were common
   and addressable cursors were something special, what is now called
   a dumb terminal could pass for a smart terminal.

dumbass attack

 /duhm'as *-tak'/ n.  [Purdue] Notional
   cause of a novice's mistake made by the experienced, especially one
   made while running as root under UNIX, e.g., typing `rm
   -r *' or `mkfs' on a mounted file system.  Compare adger.

dumbed down

 adj.  Simplified, with a strong connotation of
   *over*simplified.  Often, a marketroid will insist that
   the interfaces and documentation of software be dumbed down after
   the designer has burned untold gallons of midnight oil making it
   smart.  This creates friction.  See user-friendly.

dump

 n.  1. An undigested and voluminous mass of information
   about a problem or the state of a system, especially one routed to
   the slowest available output device (compare core_dump), and
   most especially one consisting of hex or octal runes
   describing the byte-by-byte state of memory, mass storage, or some
   file.  In elder_days, debugging was generally done by
   `groveling over' a dump (see grovel); increasing use of
   high-level languages and interactive debuggers has made such tedium
   uncommon, and the term `dump' now has a faintly archaic flavor.
   2. A backup.  This usage is typical only at large timesharing
   installations.

dumpster diving

 /dump'-ster di:'-ving/ n.  1. The practice
   of sifting refuse from an office or technical installation to
   extract confidential data, especially security-compromising
   information (`dumpster' is an Americanism for what is elsewhere
   called a `skip').  Back in AT&T's monopoly days, before paper
   shredders became common office equipment, phone phreaks (see
   phreaking) used to organize regular dumpster runs against
   phone company plants and offices.  Discarded and damaged copies of
   AT&T internal manuals taught them much.  The technique is still
   rumored to be a favorite of crackers operating against careless
   targets.  2. The practice of raiding the dumpsters behind buildings
   where producers and/or consumers of high-tech equipment are
   located, with the expectation (usually justified) of finding
   discarded but still-valuable equipment to be nursed back to health
   in some hacker's den.  Experienced dumpster-divers not infrequently
   accumulate basements full of moldering (but still potentially
   useful) cruft.

dup killer

 /d[y]oop kill'r/ n.  [FidoNet] Software that is
   supposed to detect and delete duplicates of a message that may have
   reached the FidoNet system via different routes.

dup loop

 /d[y]oop loop/ (also `dupe loop') n.  [FidoNet]
   An infinite stream of duplicated, near-identical messages on a
   FidoNet echo, the only difference being unique or mangled
   identification information applied by a faulty or incorrectly
   configured system or network gateway, thus rendering dup_killer
   s ineffective.  If such a duplicate message eventually
   reaches a system through which it has already passed (with the
   original identification information), all systems passed on the way
   back to that system are said to be involved in a dup_loop.

dusty deck

 n.  Old software (especially applications) which
   one is obliged to remain compatible with, or to maintain (DP
   types call this `legacy code', a term hackers consider smarmy and
   excessively reverent).  The term implies that the software in
   question is a holdover from card-punch days.  Used esp. when
   referring to old scientific and number-crunching software,
   much of which was written in FORTRAN and very poorly documented but
   is believed to be too expensive to replace.  See fossil;
   compare crawling_horror.

DWIM

 /dwim/  [acronym, `Do What I Mean'] 1. adj. Able to
   guess, sometimes even correctly, the result intended when bogus
   input was provided.  2. n.,obs. The BBNLISP/INTERLISP function that
   attempted to accomplish this feat by correcting many of the more
   common errors.  See hairy.  3. Occasionally, an interjection
   hurled at a balky computer, esp. when one senses one might be
   tripping over legalisms (see legalese).

   Warren Teitelman originally wrote DWIM to fix his typos and
   spelling errors, so it was somewhat idiosyncratic to his style, and
   would often make hash of anyone else's typos if they were
   stylistically different.  Some victims of DWIM thus claimed that
   the acronym stood for `Damn Warren's Infernal Machine!'.

   In one notorious incident, Warren added a DWIM feature to the
   command interpreter used at Xerox PARC.  One day another hacker
   there typed `delete *$' to free up some disk space.  (The
   editor there named backup files by appending `$' to the
   original file name, so he was trying to delete any backup files
   left over from old editing sessions.)  It happened that there
   weren't any editor backup files, so DWIM helpfully reported
   `*$ not found, assuming you meant 'delete *'.' It then started
   to delete all the files on the disk!  The hacker managed to stop it
   with a Vulcan_nerve_pinch after only a half dozen or so files
   were lost.
   
   The disgruntled victim later said he had been sorely tempted to go
   to Warren's office, tie Warren down in his chair in front of his
   workstation, and then type `delete *$' twice.

   DWIM is often suggested in jest as a desired feature for a complex
   program; it is also occasionally described as the single
   instruction the ideal computer would have.  Back when proofs of
   program correctness were in vogue, there were also jokes about
   `DWIMC' (Do What I Mean, Correctly).  A related term, more often
   seen as a verb, is DTRT (Do The Right Thing); see Right_Thing
   .

dynner

 /din'r/  32 bits, by analogy with nybble and
   byte.  Usage: rare and extremely silly.  See also playte,
   tayste, crumb.  General discussion of such terms is under
   nybble.


The Jargon File
Introduction
How Jargon Works
How to Use the Lexicon

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [^a-zA-Z]

Appendix A --- Appendix B --- Appendix C