[net.sources] JARGON in ditroff format, 2 of 4

colonel@ellie.UUCP (Col. G. L. Sicherman) (05/16/86)

triviality being imbedded in a loop from 1 to 1000000000.
.QU "FORTRAN programs do mostly number crunching."
2. To reduce the size of a
file by a complicated scheme that produces bit configurations
completely unrelated to the original data, such as by a Huffman
code.  (The file ends up looking like a paper document would if
somebody crunched the paper into a wad.)  Since such compression
usually takes more computations than simpler methods such as
counting repeated characters (such as spaces) the term is doubly
appropriate.  (This meaning is usually used in the construction
.QU "file crunch(ing)"
to distinguish it from
.QU "number crunch(ing)." )
3. n. The character
.QU # .
Usage: used at Xerox and CMU, among other places.
Other names for
.QU #
include SHARP, NUMBER, HASH, PIG-PEN,
POUND-SIGN, and MESH.
GLS adds: I recall reading somewhere that
most of these are names for the # symbol IN CONTEXT.  The name for
the sign itself is
.QU octothorp.
.DF CTY
(city) n. The terminal physically associated with a computer's
operating console.
.DF CUSPY
[from the DEC acronym CUSP, for Commonly Used System Program,
i.e., a utility program used by many people] (WPI) adj. 1. (of a
program) Well-written.  2. Functionally excellent.  A program which
performs well and interfaces well to users is cuspy.  See RUDE.
.DF DAEMON
(day\*(fmmun, dee\*(fmmun) [archaic form of
.QU demon,
which has slightly
different connotations (q.v.)] n. A program which is not invoked
explicitly, but which 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, writing a file on the lpt spooler's
directory will invoke the spooling daemon, which prints the file.
The advantage is that programs which want (in this example) files
printed need not compete for access to 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.
Usage: DAEMON and DEMON (q.v.) are often used interchangeably, but seem to
have distinct connotations.  DAEMON was introduced to computing by
CTSS people (who pronounced it dee\*(fmmon) and used it to refer to
what is now called a DRAGON or PHANTOM (q.v.).  The meaning and
pronunciation have drifted, and we think this glossary reflects
current usage.
.DF "DAY MODE"
See PHASE (of people).
.DF DEADLOCK
n. A situation wherein two or more processes are unable to
proceed because each is waiting for another to do something.
A common example is a program communicating to a PTY or STY, which
may find itself waiting for output from the PTY/STY before sending
anything more to it, while the PTY/STY is similarly waiting for
more input from the controlling program before outputting anything.
(This particular flavor of deadlock is called
.QU starvation.
Another common flavor is
.QU constipation,
where each process is
trying to send stuff to the other, but all buffers are full because
nobody is reading anything.)  See DEADLY EMBRACE.
.DF "DEADLY EMBRACE"
n. Same as DEADLOCK (q.v.), though usually used only
when exactly two processes are involved.
DEADLY EMBRACE is the
more popular term in Europe; DEADLOCK in the United States.
.DF 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.  For example, a program that generates large
numbers of meaningless error messages implying it is on the point
of imminent collapse.
.DF DEMON
(dee\*(fmmun) n. A portion of a program that is not invoked
explicitly, but which 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.
Demons 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.
.DF DIABLO
(dee-ah\*(fmblow) [from the Diablo printer] 1. n. Any letter-quality
printing device.  2. v. To produce letter-quality output from such a device.
.DF DIDDLE
v. To work with in a not particularly serious manner.
.QU "I diddled with a copy of ADVENT so it didn't double-space all the time."
.QU "Let's diddle this piece of code and see if the problem goes away."
See TWEAK and TWIDDLE.
.DF DIKE
[from
.QU "diagonal cutters" ]
v. To remove a module or disable it.
.QU "When in doubt, dike it out."
.DF DMP
(dump) See BIN.
.DF "DO PROTOCOL"
[from network protocol programming] v. To perform an
interaction with somebody or something that follows a clearly
defined procedure.  For example,
.QU "Let's do protocol with the check"
at a restaurant means to ask the waitress for the check, calculate
the tip and everybody's share, generate change as necessary, and pay the bill.
.DF DOWN
1. adj. Not working.
.QU "The up escalator is down."
2. TAKE DOWN, BRING DOWN: v. To deactivate, usually for repair work.
See UP.
.DF DPB
(duh-pib\*(fm) [from the PDP-10 instruction set] v. To plop something
down in the middle.
.DF DRAGON
n. (MIT) A program similar to a
.QU daemon
(q.v.), 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.
At MIT, all free TV's display a list of
people logged in, where they are, what they're running, etc. along
with some random picture (such as a unicorn, Snoopy, or the
Enterprise) which is generated by the
.QU "NAME DRAGON."
See PHANTOM.
.DF DWIM
[Do What I Mean] 1. adj. Able to guess, sometimes even correctly,
what result was intended when provided with bogus input.
Often suggested in jest as a desired feature for a complex program.
A related term, more often seen as a verb, is DTRT (Do The Right Thing).
2. n. The INTERLISP function that attempts to accomplish
this feat by correcting many of the more common errors.
See HAIRY.
.DF ENGLISH
n. The source code for a program, which may be in any
language, as opposed to BINARY.
Usage: slightly obsolete, used
mostly by old-time hackers, though recognizable in context.
At MIT, directory SYSENG is where the
.QU English
for system programs is kept, and SYSBIN, the binaries.
SAIL has many such directories, but the canonical one is [CSP,SYS].
.DF EPSILON
[from standard mathematical notation for a small quantity] 1.
n. A small quantity of anything.
.QU "The cost is epsilon."
2. adj.  Very small, negligible; less than marginal (q.v.).
.QU "We can get this feature for epsilon cost."
3. WITHIN EPSILON OF: Close enough
to be indistinguishable for all practical purposes.
.DF EXCH
(ex\*(fmchuh, ekstch) [from the PDP-10 instruction set] v. To
exchange two things, each for the other.
.DF EXCL
(eks\*(fmcul) n. Abbreviation for
.QU "exclamation point."
See BANG, SHRIEK, WOW.
.DF EXE
(ex\*(fmee)  See BIN.
.DF FAULTY
adj. Same denotation as
.QU bagbiting,
.QU bletcherous,
.QU losing,
q.v., but the connotation is much milder.
.DF FEATURE
n. 1. A surprising property of a program.  Occasionally documented.
To call a property a feature sometimes means the author of
the program did not consider the particular case, and the program
makes an unexpected, although not strictly speaking an incorrect
response.  See BUG.
.QU "That's not a bug, that's a feature!"
A bug can be changed to a feature by documenting it.  2. A well-known and
beloved property; a facility.  Sometimes features are planned, but
are called crocks by others.
An approximately correct spectrum
(these terms are all used to describe programs or portions thereof,
except for the first two, which are included for completeness):
.sp 0.5
.in +4n
CRASH  STOPPAGE  BUG  SCREW  LOSS  MISFEATURE
CROCK  KLUGE  HACK  WIN  FEATURE  PERFECTION
.in -4n
.sp 0.5
(The last is never actually attained.)
.DF FEEP
1. n. The soft bell of a display terminal (except for a VT-52!);
a beep.  2. v. To cause the display to make a feep sound.  TTY's do
not have feeps.
Alternate forms: BEEP, BLEEP, or just about
anything suitably onomatopoeic.
The term BREEDLE is sometimes
heard at SAIL, where the terminal bleepers are not particularly
.QU soft
(they sound more like the musical equivalent of sticking out one's tongue).
The
.QU feeper
on a VT-52 has been compared to the sound of a '52 Chevy stripping its gears.
.DF "FENCEPOST ERROR"
n. The discrete equivalent of a boundary condition.
Often exhibited in programs by iterative loops.  From the following
problem:
\*QIf you build a fence 100 feet long with posts ten feet
apart, how many posts do you need?\*U
(Either 9 or 11 is a better answer than the obvious 10.)
.DF FINE
(WPI) adj. Good, but not good enough to be CUSPY.  [The word FINE
is used elsewhere, of course, but without the implicit comparison
to the higher level implied by CUSPY.]
.DF "FLAG DAY"
[from a bit of Multics history involving a change in the
ASCII character set originally scheduled for June 14, 1966]
n. A software change which is neither forward nor backward
compatible, and which is costly to make and costly to revert.
.QU "Can we install that without causing a flag day for all users?"
.DF FLAKEY
adj. Subject to frequent lossages.  See LOSSAGE.
.DF FLAME v. To speak incessantly and/or rabidly on some relatively
uninteresting subject or with a patently ridiculous attitude.
FLAME ON: v. To continue to flame.  See RAVE.
This punning reference to Marvel comics' Human Torch has been lost as
recent usage completes the circle:
.QU "Flame on"
now usually means
.QU "beginning of flame."
.DF FLAP
v. To unload a DECtape (so it goes flap, flap, flap...).
Old hackers at MIT tell of the days when the disk was device 0 and
microtapes were 1, 2,... and attempting to flap device 0 would
instead start a motor banging inside a cabinet near the disk!
.DF FLAVOR
n. 1. Variety, type, kind.
.QU "DDT commands come in two flavors."
See VANILLA.  2. The attribute of causing something to be FLAVORFUL.
.QU "This convention yields additional flavor by allowing one to... ."
3. On the LispMachine, an object-oriented programming
system
.QU flavors ); (
each class of object is a flavor.
.DF FLAVORFUL
adj. Aesthetically pleasing.  See RANDOM and LOSING for antonyms.
See also the entry for TASTE.
.DF FLUSH
v. 1. To delete something, usually superfluous.
.QU "All that nonsense has been flushed."
Standard ITS terminology for aborting an output operation.
2. To leave at the end of a day's work (as
opposed to leaving for a meal).
.QU "I'm going to flush now."
.QU "Time to flush."
3. To exclude someone from an activity.
.DF FOO
1. [from Yiddish
.QU feh
or the Anglo-Saxon
.QU fooey! ]
interj. Term of disgust.  2. [from FUBAR (Fucked Up Beyond All Recognition),
from WWII, often seen as FOOBAR] Name used for temporary programs,
or samples of three-letter names.  Other similar words are BAR, BAZ
(Stanford corruption of BAR), and rarely RAG.  These have been used
in Pogo as well.  3. Used very generally as a sample name for
absolutely anything.  The old
.QU "Smokey Stover"
comic strips often
included the word FOO, in particular on license plates of cars.
MOBY FOO: See MOBY.
.DF FRIED
adj. 1. Non-working due to hardware failure; burnt out.  2. Of
people, exhausted.  Said particularly of those who continue to work
in such a state.  Often used as an explanation or excuse.
\*QYeah, I know that fix destroyed the file system, but I was fried
when I put it in.\*U
.DF FROB
1. n. (MIT) The official Tech Model Railroad Club definition is
.QU "FROB = protruding arm or trunnion,"
and by metaphoric extension
any somewhat small thing.  See FROBNITZ.  2. v. Abbreviated form of
FROBNICATE.
.DF FROBNICATE
v. To manipulate or adjust, to tweak.  Derived from
FROBNITZ (q.v.).  Usually abbreviated to FROB.  Thus one has the
saying
.QU "to frob a frob."
See TWEAK and TWIDDLE.  Usage: FROB,
TWIDDLE, and TWEAK sometimes connote points along a continuum.
FROB connotes aimless manipulation; TWIDDLE connotes gross
manipulation, often a coarse search for a proper setting; TWEAK
connotes fine-tuning.  If someone is turning a knob on an
oscilloscope, then if he's carefully adjusting it he is probably
tweaking it; if he is just turning it but looking at the screen he
is probably twiddling it; but if he's just doing it because turning
a knob is fun, he's frobbing it.
.DF FROBNITZ,
pl. FROBNITZEM (frob\*(fmnitsm) n. An unspecified physical
object, a widget.  Also refers to electronic black boxes.
This rare form is usually abbreviated to FROTZ, or more commonly to FROB.
Also used are FROBNULE, FROBULE, and FROBNODULE.  Starting
perhaps in 1979, FROBBOZ (fruh-bahz\*(fm), pl. FROBBOTZIM, has also
become very popular, largely due to its exposure via the Adventure
spin-off called Zork (Dungeon).
These can also be applied to
non-physical objects, such as data structures.
.DF FROG
(variant: PHROG) 1. interj. Term of disgust (we seem to have a
lot of them).  2. Used as a name for just about anything.  See FOO.
3. n. Of things, a crock.  Of people, somewhere inbetween a turkey
and a toad.  4. Jake Brown (FRG@SAIL).  5. FROGGY: adj. Similar to
BAGBITING (q.v.), but milder.
.QU "This froggy program is taking forever to run!"
.DF FROTZ
1. n. See FROBNITZ.  2. MUMBLE FROTZ: An interjection of very mild disgust.
.DF FRY
v. 1. To fail.  Said especially of smoke-producing hardware
failures.  2. More generally, to become non-working.  Usage: never
said of software, only of hardware and humans.  See FRIED.
.DF FTP
(spelled out, NOT pronounced
.QU fittip )
1. n. The File Transfer
Protocol for transmitting files between systems on the ARPAnet.
2.  v. To transfer a file using the File Transfer Program.
.QU "Lemme get this copy of Wuthering Heights FTP'd from SAIL."
.DF FUDGE
1. v. To perform in an incomplete but marginally acceptable way,
particularly with respect to the writing of a program.
.QU "I didn't feel like going through that pain and suffering, so I fudged it."
2. n. The resulting code.
.DF "FUDGE FACTOR"
n. A value or parameter that is varied in an ad hoc way
to produce the desired result.  The terms
.QU tolerance
and
.QU slop
are also used, though these usually indicate a one-sided leeway,
such as a buffer which is made larger than necessary because one
isn't sure exactly how large it needs to be, and it is better to
waste a little space than to lose completely for not having enough.
A fudge factor, on the other hand, can often be tweaked in more
than one direction.
An example might be the coefficients of an equation, where the
coefficients are varied in an attempt to make the equation fit certain
criteria.
.DF GABRIEL
[for Dick Gabriel, SAIL volleyball fanatic] n. An unnecessary
(in the opinion of the opponent) stalling tactic, e.g., tying one's
shoelaces or hair repeatedly, asking the time, etc.  Also used to
refer to the perpetrator of such tactics.  Also,
.QU "pulling a Gabriel,"
.QU "Gabriel mode."
.DF "GARBAGE COLLECT"
v., GARBAGE COLLECTION n. See GC.
.DF GARPLY
n. (Stanford) Another meta-word popular among SAIL hackers.
.DF GAS
[as in
.QU "gas chamber" ]
interj. 1. A term of disgust and hatred,
implying that gas should be dispensed in generous quantities,
thereby exterminating the source of irritation.
.QU "Some loser just reloaded the system for no reason!  Gas!"
2. A term suggesting
that someone or something ought to be flushed out of mercy.
.QU "The system's wedging every few minutes.  Gas!"
3. v. FLUSH (q.v.).
.QU "You should gas that old crufty software."
4. GASEOUS adj. Deserving of being gassed.  Usage: primarily used by Geoff
Goodfellow at SRI, but spreading.
.DF GC
[from LISP terminology] 1. v. To clean up and throw away useless things.
.QU "I think I'll GC the top of my desk today."
2. To recycle, reclaim, or put to another use.  3. To forget.  The
implication is often that one has done so deliberately.  4. n. An
instantiation of the GC process.
.DF GEDANKEN
[from Einstein's term
.QU gedanken-experimenten,
such as the standard proof that
.ie n E=mc^2]
.el E=mc\u\s-2\&2\s0\d]
adj. An AI project which is written up
in grand detail without ever being implemented to any great extent.
Usually perpetrated by people who aren't very good hackers or find
programming distasteful or are just in a hurry.
A gedanken thesis
is usually marked by an obvious lack of intuition about what is
programmable and what is not and about what does and does not
constitute a clear specification of a program-related concept such
as an algorithm.
.DF "GLASS TTY"
n. A terminal which has a display screen but which, because
of hardware or software limitations, behaves like a teletype or
other printing terminal.  An example is the ADM-3 (without cursor
control).  A glass tty can't do neat display hacks, and you can't
save the output either.
.DF GLITCH
[from the Yiddish
.QU glitshen,
to slide] 1. n. A sudden
interruption in electric service, sanity, or program function.
Sometimes recoverable.  2. v. To commit a glitch.  See GRITCH.
3. v. (Stanford) To scroll a display screen.
.DF GLORK
1. interj. Term of mild surprise, usually tinged with outrage,
as when one attempts to save the results of two hours of editing
and finds that the system has just crashed.  2. Used as a name for
just about anything.  See FOO.  3. v. Similar to GLITCH (q.v.), but
usually used reflexively.
.QU "My program just glorked itself."
.DF GOBBLE
v. To consume or to obtain.  GOBBLE UP tends to imply
.QU consume,
while GOBBLE DOWN tends to imply
.QU obtain.
.QU "The output spy gobbles characters out of a TTY output buffer."
.QU "I guess I'll gobble down a copy of the documentation tomorrow."
See SNARF.
.DF GORP
(CMU) [perhaps from the generic term for dried hiker's food,
stemming from the acronym
.QU "Good Old Raisins and Peanuts" ]
Another metasyntactic variable, like FOO and BAR.
.DF GRIND
v. 1. (primarily MIT) To format code, especially LISP code, by
indenting lines so that it looks pretty.  Hence, PRETTY PRINT, the
generic term for such operations.  2. To run seemingly
interminably, performing some tedious and inherently useless task.
Similar to CRUNCH.
.DF GRITCH
1. n. A complaint (often caused by a GLITCH (q.v.)).  2. v. To
complain.  Often verb-doubled:
.QU "Gritch gritch."
3. Glitch.
.DF GROK
[from the novel
.I "Stranger in a Strange Land,"
by Robert Heinlein,
where it is a Martian word meaning roughly
.QU "to be one with" ]
v. To understand, usually in a global sense.
.DF GRONK
[popularized by the cartoon strip
.QU B.C.
by Johnny Hart, but the
word apparently predates that] v. 1. To clear the state of a wedged
device and restart it.  More severe than
.QU "to frob"
(q.v.).  2. To break.
.QU "The teletype scanner was gronked, so we took the system down."
3. GRONKED: adj. Of people, the condition of feeling very
tired or sick.  4. GRONK OUT: v. To cease functioning.  Of people,
to go home and go to sleep.
.QU "I guess I'll gronk out now; see you all tomorrow."
.DF GROVEL
v. To work interminably and without apparent progress.  Often
used with
.QU over.
.QU "The compiler grovelled over my code."
Compare GRIND and CRUNCH.  Emphatic form: GROVEL OBSCENELY.
.DF GRUNGY
adj. Incredibly dirty or grubby.  Anything which has been
washed within the last year is not really grungy.  Also used
metaphorically; hence some programs (especially crocks) can be
described as grungy.
.DF GUBBISH
[a portmanteau of
.QU garbage
and
.QU rubbish? ]
n. Garbage; crap; nonsense.
.QU "What is all this gubbish?"
.DF GUN
[from the GUN command on ITS] v. To forcibly terminate a program
or job (computer, not career).
\*QSome idiot left a background
process running soaking up half the cycles, so I gunned it.\*U
.DF HACK
n. 1. Originally a quick job that produces what is needed, but
not well.  2. The result of that job.  3. NEAT HACK: A clever
technique.  Also, a brilliant practical joke, where neatness is
correlated with cleverness, harmlessness, and surprise value.
Example: the Caltech Rose Bowl card display switch circa 1961.
4. REAL HACK: A crock (occasionally affectionate).
v. 5. With
.QU together,
to throw something together so it will work.
6. To bear emotionally or physically.
.QU "I can't hack this heat!"
7.  To work on something (typically a program).  In specific sense:
.QU "What are you doing?"
.QU "I'm hacking TECO."
In general sense:
.QU "What do you do around here?"
.QU "I hack TECO."
(The former is
time-immediate, the latter time-extended.)  More generally,
.QU "I hack x"
is roughly equivalent to
.QU "x is my bag."
.QU "I hack solid-state physics."
8. To pull a prank on.  See definition 3 and HACKER (def
#6).  9. v.i. To waste time (as opposed to TOOL).
.QU "Whatcha up to?"
.QU "Oh, just hacking."
10. HACK UP (ON): To hack, but generally
implies that the result is meanings 1\-2.  11. HACK VALUE: Term used
as the reason or motivation for expending effort toward a seemingly
useless goal, the point being that the accomplished goal is a hack.
For example, MacLISP has code to read and print roman numerals,
which was installed purely for hack value.
HAPPY HACKING: A farewell.  HOW'S HACKING?: A friendly greeting
among hackers.  HACK HACK: A somewhat pointless but friendly
comment, often used as a temporary farewell.
[The word HACK doesn't really have 69 different meanings.  In fact,
HACK has only one meaning, an extremely subtle and profound one 
which defies articulation.  Which connotation a given HACK-token 
has depends in similarly profound ways on the context.  Similar 
comments apply to a couple other hacker jargon items, most notably 
RANDOM. \*(emAgre]
.DF HACKER
[originally, someone who makes furniture with an axe] n. 1. A
person who enjoys learning the details of programming systems and
how to stretch their capabilities, as opposed to most users who
prefer to learn only the minimum necessary.
2. One who programs enthusiastically, or who enjoys programming
rather than just theorizing about programming.
3. A person capable of appreciating hack value (q.v.).
4. A person who is good at programming quickly.
Not everything a hacker produces is a hack.  5. An expert at a
particular program, or one who frequently does work using it or on
it; example:
-- 
Col. G. L. Sicherman
UU: ...{rocksvax|decvax}!sunybcs!colonel
CS: colonel@buffalo-cs
BI: csdsicher@sunyabva