Full Text Archive logoFull Text Archive — Free Classic E-books

The New Hacker's Dictionary version 4.2.2 by Various editors

Part 12 out of 29

Adobe PDF icon
Download this document as a .pdf
File size: 1.8 MB
What's this? light bulb idea Many people prefer to read off-line or to print out text and read from the real printed page. Others want to carry documents around with them on their mobile phones and read while they are on the move. We have created .pdf files of all out documents to accommodate all these groups of people. We recommend that you download .pdfs onto your mobile phone when it is connected to a WiFi connection for reading off-line.

a tree, because nobody's sure what `prettiest' means algorithmically."

Hacker use of this term may recall mainstream slang originated early
in the 20th century by President Theodore Roosevelt. There is a legend
that, weary of inconclusive talks with Colombia over the right to dig
a canal through its then-province Panama, he remarked, "Negotiating
with those pirates is like trying to nail currant jelly to the wall."
Roosevelt's government subsequently encouraged the anti-Colombian
insurgency that created the nation of Panama.

Node:line 666, Next:[7965]line eater the, Previous:[7966]like nailing
jelly to a tree, Up:[7967]= L =

line 666 [from Christian eschatological myth] n.

The notional line of source at which a program fails for obscure
reasons, implying either that somebody is out to get it (when you are
the programmer), or that it richly deserves to be so gotten (when you
are not). "It works when I trace through it, but seems to crash on
line 666 when I run it." "What happens is that whenever a large batch
comes through, mmdf dies on the Line of the Beast. Probably some twit
hardcoded a buffer size."

Node:line eater the, Next:[7968]line noise, Previous:[7969]line 666,
Up:[7970]= L =

line eater, the n. obs.

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

Node:line noise, Next:[7973]line starve, Previous:[7974]line eater
the, Up:[7975]= L =

line noise n.

1. [techspeak] Spurious characters due to electrical noise in a
communications link, especially an RS-232 serial connection. Line
noise may be induced by poor connections, interference or crosstalk
from other circuits, electrical storms, [7976]cosmic rays, or
(notionally) birds crapping on the phone wires. 2. Any chunk of data
in a file or elsewhere that looks like the results of line noise in
sense 1. 3. Text that is theoretically a readable text or program
source but employs syntax so bizarre that it looks like line noise in
senses 1 or 2. Yes, there are languages this ugly. The canonical
example is [7977]TECO; it is often claimed that "TECO's input syntax
is indistinguishable from line noise." Other non-[7978]WYSIWYG
editors, such as Multics qed and Unix ed, in the hands of a real
hacker, also qualify easily, as do deliberately obfuscated languages
such as [7979]INTERCAL.

Node:line starve, Next:[7980]linearithmic, Previous:[7981]line noise,
Up:[7982]= L =

line starve

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

Node:linearithmic, Next:[7987]link farm, Previous:[7988]line starve,
Up:[7989]= L =

linearithmic adj.

Of an algorithm, having running time that is O(N log N). Coined as a
portmanteau of `linear' and `logarithmic' in "Algorithms In C" by
Robert Sedgewick (Addison-Wesley 1990, ISBN 0-201-51425-7).

Node:link farm, Next:[7990]link rot, Previous:[7991]linearithmic,
Up:[7992]= L =

link farm n.

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

Node:link rot, Next:[7994]link-dead, Previous:[7995]link farm,
Up:[7996]= L =

link rot n.

The natural decay of web links as the sites they're connected to
change or die. Compare [7997]bit rot.

Node:link-dead, Next:[7998]lint, Previous:[7999]link rot, Up:[8000]= L

link-dead adj.

[MUD] The state a player is in when they kill their connection to a
[8001]MUD without leaving it properly. The player is then commonly
left as a statue in the game, and is only removed after a certain
period of time (an hour on most MUDs). Used on [8002]IRC as well,
although it is inappropriate in that context. Compare [8003]netdead.

Node:lint, Next:[8004]Lintel, Previous:[8005]link-dead, Up:[8006]= L =


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

Node:Lintel, Next:[8009]Linus, Previous:[8010]lint, Up:[8011]= L =

Lintel n.

The emerging [8012]Linux/Intel alliance. This term began to be used in
early 1999 after it became clear that the [8013]Wintel alliance was
under increasing strain and Intel started taking stakes in Linux

Node:Linus, Next:[8014]Linux, Previous:[8015]Lintel, Up:[8016]= L =

Linus /leen'us'/ or /lin'us'/, not /li:'nus/

Linus Torvalds, the author of [8017]Linux. Nobody in the hacker
culture has been as readily recognized by first name alone since Ken

Node:Linux, Next:[8018]lion food, Previous:[8019]Linus, Up:[8020]= L =

Linux /lee'nuhks/ or /li'nuks/, not /li:'nuhks/ n.

The free Unix workalike created by Linus Torvalds and friends starting
about 1991. The pronunciation /lee'nuhks/ is preferred because the
name `Linus' has an /ee/ sound in Swedish (Linus's family is part of
Finland's 6% ethnic-Swedish minority). This may be the most remarkable
hacker project in history -- an entire clone of Unix for 386, 486 and
Pentium micros, distributed for free with sources over the net (ports
to Alpha and Sparc and many other machines are also in use).

Linux is what [8021]GNU aimed to be, and it relies on the GNU toolset.
But the Free Software Foundation didn't produce the kernel to go with
that toolset until 1999, which was too late. Other, similar efforts
like FreeBSD and NetBSD have been technically successful but never
caught fire the way Linux has; as this is written in 2000, Linux is
seriously challenging Microsoft's OS dominance. It has already
captured 31% of the Internet-server market and 25% of general business

An earlier version of this entry opined "The secret of Linux's success
seems to be that Linus worked much harder early on to keep the
development process open and recruit other hackers, creating a
snowball effect." Truer than we knew. See [8022]bazaar.

(Some people object that the name `Linux' should be used to refer only
to the kernel, not the entire operating system. This claim is a proxy
for an underlying territorial dispute; people who insist on the term
`GNU/Linux' want the the [8023]FSF to get most of the credit for Linux
because RMS and friends wrote many of its user-level tools. Neither
this theory nor the term `GNU/Linux' has gained more than minority

Node:lion food, Next:[8024]Lions Book, Previous:[8025]Linux,
Up:[8026]= L =

lion food n.

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

Node:Lions Book, Next:[8027]LISP, Previous:[8028]lion food, Up:[8029]=
L =

Lions Book n.

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

[1996 update: The Lions book lives again! It was put back in print as
ISBN 1-57398-013-7 from Peer-To-Peer Communications, with forewords by
Dennis Ritchie and Ken Thompson. In a neat bit of reflexivity, the
page before the contents quotes this entry.]

Node:LISP, Next:[8031]list-bomb, Previous:[8032]Lions Book, Up:[8033]=
L =


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

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

One significant application for LISP has been as a proof by example
that most newer languages, such as [8037]COBOL and [8038]Ada, are full
of unnecessary [8039]crocks. When the [8040]Right Thing has already
been done once, there is no justification for [8041]bogosity in newer

Node:list-bomb, Next:[8042]lithium lick, Previous:[8043]LISP,
Up:[8044]= L =

list-bomb v.

To [8045]mailbomb someone by forging messages causing the victim to
become a subscriber to many mailing lists. This is a self-defeating
tactic; it merely forces mailing list servers to require confirmation
by return message for every subscription.

Node:lithium lick, Next:[8046]little-endian, Previous:[8047]list-bomb,
Up:[8048]= L =

lithium lick n.

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

Node:little-endian, Next:[8049]live, Previous:[8050]lithium lick,
Up:[8051]= L =

little-endian adj.

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

Node:live, Next:[8055]live data, Previous:[8056]little-endian,
Up:[8057]= L =

live /li:v/ adj.,adv.

[common] Opposite of `test'. Refers to actual real-world data or a
program working with it. For example, the response to "I think the
record deleter is finished" might be "Is it live yet?" or "Have you
tried it out on live data?" This usage usually carries the connotation
that live data is more fragile and must not be corrupted, or bad
things will happen. So a more appropriate response might be: "Well,
make sure it works perfectly before we throw live data at it." The
implication here is that record deletion is something pretty
significant, and a haywire record-deleter running amok live would
probably cause great harm.

Node:live data, Next:[8058]Live Free Or Die!, Previous:[8059]live,
Up:[8060]= L =

live data n.

1. Data that is written to be interpreted and takes over program flow
when triggered by some un-obvious operation, such as viewing it. One
use of such hacks is to break security. For example, some smart
terminals have commands that allow one to download strings to program
keys; this can be used to write live data that, when listed to the
terminal, infects it with a security-breaking [8061]virus that is
triggered the next time a hapless user strikes that key. For another,
there are some well-known bugs in [8062]vi that allow certain texts to
send arbitrary commands back to the machine when they are simply
viewed. 2. In C code, data that includes pointers to function
[8063]hooks (executable code). 3. An object, such as a
[8064]trampoline, that is constructed on the fly by a program and
intended to be executed as code.

Node:Live Free Or Die!, Next:[8065]livelock, Previous:[8066]live data,
Up:[8067]= L =

Live Free Or Die! imp.

1. The state motto of New Hampshire, which appears on that state's
automobile license plates. 2. A slogan associated with Unix in the
romantic days when Unix aficionados saw themselves as a tiny,
beleaguered underground tilting against the windmills of industry. The
"free" referred specifically to freedom from the [8068]fascist design
philosophies and crufty misfeatures common on competing operating
systems. Armando Stettner, one of the early Unix developers, used to
give out fake license plates bearing this motto under a large Unix,
all in New Hampshire colors of green and white. These are now valued
collector's items. In 1994 [8069]DEC put an inferior imitation of
these in circulation with a red corporate logo added. Compaq (half of
which was once DEC) has continued the practice.

Node:livelock, Next:[8070]liveware, Previous:[8071]Live Free Or Die!,
Up:[8072]= L =

livelock /li:v'lok/ n.

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

Node:liveware, Next:[8074]lobotomy, Previous:[8075]livelock,
Up:[8076]= L =

liveware /li:v'weir/ n.

1. Synonym for [8077]wetware. Less common. 2. [Cambridge] Vermin.
"Waiter, there's some liveware in my salad..."

Node:lobotomy, Next:[8078]locals the, Previous:[8079]liveware,
Up:[8080]= L =

lobotomy n.

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

Node:locals the, Next:[8082]locked and loaded,
Previous:[8083]lobotomy, Up:[8084]= L =

locals, the pl.n.

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

Node:locked and loaded, Next:[8085]locked up, Previous:[8086]locals
the, Up:[8087]= L =

locked and loaded adj.,obs.

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

Node:locked up, Next:[8089]logic bomb, Previous:[8090]locked and
loaded, Up:[8091]= L =

locked up adj.

Syn. for [8092]hung, [8093]wedged.

Node:logic bomb, Next:[8094]logical, Previous:[8095]locked up,
Up:[8096]= L =

logic bomb n.

Code surreptitiously inserted into an application or OS that causes it
to perform some destructive or security-compromising activity whenever
specified conditions are met. Compare [8097]back door.

Node:logical, Next:[8098]loop through, Previous:[8099]logic bomb,
Up:[8100]= L =

logical adj.

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

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

Node:loop through, Next:[8103]loose bytes, Previous:[8104]logical,
Up:[8105]= L =

loop through vt.

To process each element of a list of things. "Hold on, I've got to
loop through my paper mail." Derives from the computer-language notion
of an iterative loop; compare `cdr down' (under [8106]cdr), which is
less common among C and Unix programmers. ITS hackers used to say `IRP
over' after an obscure pseudo-op in the MIDAS PDP-10 assembler (the
same IRP op can nowadays be found in Microsoft's assembler).

Node:loose bytes, Next:[8107]lord high fixer, Previous:[8108]loop
through, Up:[8109]= L =

loose bytes n.

Commonwealth hackish term for the padding bytes or [8110]shims many
compilers insert between members of a record or structure to cope with
alignment requirements imposed by the machine architecture.

Node:lord high fixer, Next:[8111]lose, Previous:[8112]loose bytes,
Up:[8113]= L =

lord high fixer n.

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

Node:lose, Next:[8115]lose lose, Previous:[8116]lord high fixer,
Up:[8117]= L =

lose vi.

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

Node:lose lose, Next:[8120]loser, Previous:[8121]lose, Up:[8122]= L =

lose lose interj.

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

Node:loser, Next:[8123]losing, Previous:[8124]lose lose, Up:[8125]= L

loser n.

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

Node:losing, Next:[8127]loss, Previous:[8128]loser, Up:[8129]= L =

losing adj.

Said of anything that is or causes a [8130]lose or [8131]lossage. "The
compiler is losing badly when I try to use templates."

Node:loss, Next:[8132]lossage, Previous:[8133]losing, Up:[8134]= L =

loss n.

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

Node:lossage, Next:[8136]lost in the noise, Previous:[8137]loss,
Up:[8138]= L =

lossage /los'*j/ n.

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

Node:lost in the noise, Next:[8140]lost in the underflow,
Previous:[8141]lossage, Up:[8142]= L =

lost in the noise adj.

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

Node:lost in the underflow, Next:[8144]lots of MIPS but no I/O,
Previous:[8145]lost in the noise, Up:[8146]= L =

lost in the underflow adj.

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

Node:lots of MIPS but no I/O, Next:[8150]low-bandwidth,
Previous:[8151]lost in the underflow, Up:[8152]= L =

lots of MIPS but no I/O adj.

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

Node:low-bandwidth, Next:[8153]LPT, Previous:[8154]lots of MIPS but no
I/O, Up:[8155]= L =

low-bandwidth adj.

[from communication theory] Used to indicate a talk that, although not
[8156]content-free, was not terribly informative. "That was a
low-bandwidth talk, but what can you expect for an audience of
[8157]suits!" Compare [8158]zero-content, [8159]bandwidth,

Node:LPT, Next:[8161]Lubarsky's Law of Cybernetic Entomology,
Previous:[8162]low-bandwidth, Up:[8163]= L =

LPT /L-P-T/ or /lip'it/ or /lip-it'/ n.

1. Line printer (originally Line Printing Terminal). Rare under Unix,
more common among hackers who grew up with ITS, MS-DOS, CP/M and other
operating systems that were strongly influenced by early [8164]DEC
conventions. 2. Local PorT. Used among MS-DOS programmers (and so
expanded in the MS-DOS 5 manual). It seems likely this is a

Node:Lubarsky's Law of Cybernetic Entomology, Next:[8166]Lumber
Cartel, Previous:[8167]LPT, Up:[8168]= L =

Lubarsky's Law of Cybernetic Entomology prov.

"There is always one more bug."

Node:Lumber Cartel, Next:[8169]lunatic fringe,
Previous:[8170]Lubarsky's Law of Cybernetic Entomology, Up:[8171]= L =

Lumber Cartel n.

A mythical conspiracy accused by [8172]spam-spewers of funding
anti-spam activism in order to force the direct-mail promotions
industry back onto paper. Hackers, predictably, responded by forming a
"Lumber Cartel" spoofing this paranoid theory; the web page is
[8173]http://come.to/the.lumber.cartel. Members often include the tag
TINLC ("There Is No Lumber Cartel") in their postings; see [8174]TINC,
[8175]backbone cabal and [8176]NANA for explanation.

Node:lunatic fringe, Next:[8177]lurker, Previous:[8178]Lumber Cartel,
Up:[8179]= L =

lunatic fringe n.

[IBM] Customers who can be relied upon to accept release 1 versions of
software. Compare [8180]heatseeker.

Node:lurker, Next:[8181]luser, Previous:[8182]lunatic fringe,
Up:[8183]= L =

lurker n.

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

The creator of the popular science-fiction TV series "Babylon 5" has
ties to SF fandom and the hacker culture. In that series, the use of
the term `lurker' for a homeless or displaced person is a conscious
reference to the jargon term.

Node:luser, Next:[8185]M, Previous:[8186]lurker, Up:[8187]= L =

luser /loo'zr/ n.

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

Node:= M =, Next:[8194]= N =, Previous:[8195]= L =, Up:[8196]The
Jargon Lexicon

= M =

* [8197]M:
* [8198]M$:
* [8199]macdink:
* [8200]machinable:
* [8201]machoflops:
* [8202]Macintoy:
* [8203]Macintrash:
* [8204]macro:
* [8205]macro-:
* [8206]macrology:
* [8207]macrotape:
* [8208]maggotbox:
* [8209]magic:
* [8210]magic cookie:
* [8211]magic number:
* [8212]magic smoke:
* [8213]mail storm:
* [8214]mailbomb:
* [8215]mailing list:
* [8216]main loop:
* [8217]mainframe:
* [8218]management:
* [8219]mandelbug:
* [8220]manged:
* [8221]mangle:
* [8222]mangled name:
* [8223]mangler:
* [8224]manularity:
* [8225]marbles:
* [8226]marginal:
* [8227]Marginal Hacks:
* [8228]marginally:
* [8229]marketroid:
* [8230]Mars:
* [8231]martian:
* [8232]massage:
* [8233]math-out:
* [8234]Matrix:
* [8235]maximum Maytag mode:
* [8236]meatspace:
* [8237]meatware:
* [8238]meeces:
* [8239]meg:
* [8240]mega-:
* [8241]megapenny:
* [8242]MEGO:
* [8243]meltdown network:
* [8244]meme:
* [8245]meme plague:
* [8246]memetics:
* [8247]memory farts:
* [8248]memory leak:
* [8249]memory smash:
* [8250]menuitis:
* [8251]mess-dos:
* [8252]meta:
* [8253]meta bit:
* [8254]metasyntactic variable:
* [8255]MFTL:
* [8256]mickey:
* [8257]mickey mouse program:
* [8258]micro-:
* [8259]MicroDroid:
* [8260]microfloppies:
* [8261]microfortnight:
* [8262]microLenat:
* [8263]microReid:
* [8264]microserf:
* [8265]Microsloth Windows:
* [8266]Microsoft:
* [8267]micros~1:
* [8268]middle-endian:
* [8269]middle-out implementation:
* [8270]milliLampson:
* [8271]minifloppies:
* [8272]MIPS:
* [8273]misbug:
* [8274]misfeature:
* [8275]Missed'em-five:
* [8276]missile address:
* [8277]miswart:
* [8278]MMF:
* [8279]mobo:
* [8280]moby:
* [8281]mockingbird:
* [8282]mod:
* [8283]mode:
* [8284]mode bit:
* [8285]modulo:
* [8286]molly-guard:
* [8287]Mongolian Hordes technique:
* [8288]monkey up:
* [8289]monkey scratch:
* [8290]monstrosity:
* [8291]monty:
* [8292]Moof:
* [8293]Moore's Law:
* [8294]moose call:
* [8295]moria:
* [8296]MOTAS:
* [8297]MOTOS:
* [8298]MOTSS:
* [8299]mouse ahead:
* [8300]mouse around:
* [8301]mouse belt:
* [8302]mouse droppings:
* [8303]mouse elbow:
* [8304]mouso:
* [8305]MS-DOS:
* [8306]mu:
* [8307]MUD:
* [8308]muddie:
* [8309]mudhead:
* [8310]muggle:
* [8311]multician:
* [8312]Multics:
* [8313]multitask:
* [8314]mumblage:
* [8315]mumble:
* [8316]munch:
* [8317]munching:
* [8318]munching squares:
* [8319]munchkin:
* [8320]mundane:
* [8321]mung:
* [8322]munge:
* [8323]Murphy's Law:
* [8324]music:
* [8325]mutter:

Node:M, Next:[8326]M$, Previous:[8327]luser, Up:[8328]= M =

M pref. (on units) suff. (on numbers)

[SI] See [8329]quantifiers.

Node:M$, Next:[8330]macdink, Previous:[8331]M, Up:[8332]= M =


Common net abbreviation for Microsoft, everybody's least favorite

Node:macdink, Next:[8333]machinable, Previous:[8334]M$, Up:[8335]= M =

macdink /mak'dink/ vt.

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

Node:machinable, Next:[8338]machoflops, Previous:[8339]macdink,
Up:[8340]= M =

machinable adj.

Machine-readable. Having the [8341]softcopy nature.

Node:machoflops, Next:[8342]Macintoy, Previous:[8343]machinable,
Up:[8344]= M =

machoflops /mach'oh-flops/ n.

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

Node:Macintoy, Next:[8347]Macintrash, Previous:[8348]machoflops,
Up:[8349]= M =

Macintoy /mak'in-toy/ n.

The Apple Macintosh, considered as a [8350]toy. Less pejorative than

Node:Macintrash, Next:[8352]macro, Previous:[8353]Macintoy, Up:[8354]=
M =

Macintrash /mak'in-trash`/ n.

The Apple Macintosh, as described by a hacker who doesn't appreciate
being kept away from the real computer by the interface. The term
[8355]maggotbox has been reported in regular use in the Research
Triangle area of North Carolina. Compare [8356]Macintoy. See also
[8357]beige toaster, [8358]WIMP environment, [8359]point-and-drool
interface, [8360]drool-proof paper, [8361]user-friendly.

Node:macro, Next:[8362]macro-, Previous:[8363]Macintrash, Up:[8364]= M

macro /mak'roh/ n.

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

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

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

Node:macro-, Next:[8368]macrology, Previous:[8369]macro, Up:[8370]= M

macro- pref.

Large. Opposite of [8371]micro-. In the mainstream and among other
technical cultures (for example, medical people) this competes with
the prefix [8372]mega-, but hackers tend to restrict the latter to

Node:macrology, Next:[8373]macrotape, Previous:[8374]macro-,
Up:[8375]= M =

macrology /mak-rol'*-jee/ n.

1. Set of usually complex or crufty macros, e.g., as part of a large
system written in [8376]LISP, [8377]TECO, or (less commonly)
assembler. 2. The art and science involved in comprehending a
macrology in sense 1. Sometimes studying the macrology of a system is
not unlike archeology, ecology, or [8378]theology, hence the
sound-alike construction. See also [8379]boxology.

Node:macrotape, Next:[8380]maggotbox, Previous:[8381]macrology,
Up:[8382]= M =

macrotape /mak'roh-tayp/ n.

An industry-standard reel of tape. Originally, as opposed to a DEC
microtape; nowadays, as opposed to modern QIC and DDS tapes. Syn.
[8383]round tape.

Node:maggotbox, Next:[8384]magic, Previous:[8385]macrotape, Up:[8386]=
M =

maggotbox /mag'*t-boks/ n.

See [8387]Macintrash. This is even more derogatory.

Node:magic, Next:[8388]magic cookie, Previous:[8389]maggotbox,
Up:[8390]= M =


1. adj. As yet unexplained, or too complicated to explain; compare
[8391]automagically and (Arthur C.) Clarke's Third Law: "Any
sufficiently advanced technology is indistinguishable from magic."
"TTY echoing is controlled by a large number of magic bits." "This
routine magically computes the parity of an 8-bit byte in three
instructions." 2. adj. Characteristic of something that works although
no one really understands why (this is especially called [8392]black
magic). 3. n. [Stanford] A feature not generally publicized that
allows something otherwise impossible, or a feature formerly in that
category but now unveiled. 4. n. The ultimate goal of all engineering
& development, elegance in the extreme; from the first corollary to
Clarke's Third Law: "Any technology distinguishable from magic is
insufficiently advanced".

Parodies playing on these senses of the term abound; some have made
their way into serious documentation, as when a MAGIC directive was
described in the Control Card Reference for GCOS c.1978. For more
about hackish `magic', see [8393]Appendix A. Compare [8394]black
magic, [8395]wizardly, [8396]deep magic, [8397]heavy wizardry.

Node:magic cookie, Next:[8398]magic number, Previous:[8399]magic,
Up:[8400]= M =

magic cookie n.

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

Node:magic number, Next:[8405]magic smoke, Previous:[8406]magic
cookie, Up:[8407]= M =

magic number n.

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

The magic number, on the other hand, is 7+/-2. See "The magical number
seven, plus or minus two: some limits on our capacity for processing
information" by George Miller, in the "Psychological Review" 63:81-97
(1956). This classic paper established the number of distinct items
(such as numeric digits) that humans can hold in short-term memory.
Among other things, this strongly influenced the interface design of
the phone system.

Node:magic smoke, Next:[8410]mail storm, Previous:[8411]magic number,
Up:[8412]= M =

magic smoke n.

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

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

Node:mail storm, Next:[8416]mailbomb, Previous:[8417]magic smoke,
Up:[8418]= M =

mail storm n.

[from [8419]broadcast storm, influenced by `maelstrom'] What often
happens when a machine with an Internet connection and active users
re-connects after extended downtime -- a flood of incoming mail that
brings the machine to its knees. See also [8420]hairball.

Node:mailbomb, Next:[8421]mailing list, Previous:[8422]mail storm,
Up:[8423]= M =


(also mail bomb) [Usenet] 1. v. To send, or urge others to send,
massive amounts of [8424]email to a single system or person, esp. with
intent to crash or [8425]spam the recipient's system. Sometimes done
in retaliation for a perceived serious offense. Mailbombing is itself
widely regarded as a serious offense -- it can disrupt email traffic
or other facilities for innocent users on the victim's system, and in
extreme cases, even at upstream sites. 2. n. An automatic procedure
with a similar effect. 3. n. The mail sent. Compare [8426]letterbomb,
[8427]nastygram, [8428]BLOB (sense 2), [8429]list-bomb.

Node:mailing list, Next:[8430]main loop, Previous:[8431]mailbomb,
Up:[8432]= M =

mailing list n.

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

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

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

Node:main loop, Next:[8436]mainframe, Previous:[8437]mailing list,
Up:[8438]= M =

main loop n.

The top-level control flow construct in an input- or event-driven
program, the one which receives and acts or dispatches on the
program's input. See also [8439]driver.

Node:mainframe, Next:[8440]management, Previous:[8441]main loop,
Up:[8442]= M =

mainframe n.

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

It has been common wisdom among hackers since the late 1980s that the
mainframe architectural tradition is essentially dead (outside of the
tiny market for [8447]number-crunching supercomputers (see
[8448]cray)), having been swamped by the recent huge advances in IC
technology and low-cost personal computing. The wave of failures,
takeovers, and mergers among traditional mainframe makers in the early
1990s bore this out. The biggest mainframer of all, IBM, was compelled
to re-invent itself as a huge systems-consulting house. (See
[8449]dinosaurs mating and [8450]killer micro).

Node:management, Next:[8451]mandelbug, Previous:[8452]mainframe,
Up:[8453]= M =

management n.

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

Node:mandelbug, Next:[8456]manged, Previous:[8457]management,
Up:[8458]= M =

mandelbug /man'del-buhg/ n.

[from the Mandelbrot set] A bug whose underlying causes are so complex
and obscure as to make its behavior appear chaotic or even
non-deterministic. This term implies that the speaker thinks it is a
[8459]Bohr bug, rather than a [8460]heisenbug. See also

Node:manged, Next:[8462]mangle, Previous:[8463]mandelbug, Up:[8464]= M

manged /mahnjd/ n.

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

Node:mangle, Next:[8466]mangled name, Previous:[8467]manged,
Up:[8468]= M =

mangle vt.

1. Used similarly to [8469]mung or [8470]scribble, but more violent in
its connotations; something that is mangled has been irreversibly and
totally trashed. 2. To produce the [8471]mangled name corresponding to
a C++ declaration.

Node:mangled name, Next:[8472]mangler, Previous:[8473]mangle,
Up:[8474]= M =

mangled name n.

A name, appearing in a C++ object file, that is a coded representation
of the object declaration as it appears in the source. Mangled names
are used because C++ allows multiple objects to have the same name, as
long as they are distinguishable in some other way, such as by having
different parameter types. Thus, the internal name must have that
additional information embedded in it, using the limited character set
allowed by most linkers. For instance, one popular compiler encodes
the standard library function declaration "memchr(const
void*,int,unsigned int)" as "@memchr$qpxviui".

Node:mangler, Next:[8475]manularity, Previous:[8476]mangled name,
Up:[8477]= M =

mangler n.

[DEC] A manager. Compare [8478]management. Note that [8479]system
mangler is somewhat different in connotation.

Node:manularity, Next:[8480]marbles, Previous:[8481]mangler,
Up:[8482]= M =

manularity /man`yoo-la'ri-tee/ n.

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

Node:marbles, Next:[8485]marginal, Previous:[8486]manularity,
Up:[8487]= M =

marbles pl.n.

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

Node:marginal, Next:[8489]Marginal Hacks, Previous:[8490]marbles,
Up:[8491]= M =

marginal adj.

[common] 1. [techspeak] An extremely small change. "A marginal
increase in [8492]core can decrease [8493]GC time drastically." In
everyday terms, this means that it is a lot easier to clean off your
desk if you have a spare place to put some of the junk while you sort
through it. 2. Of little merit. "This proposed new feature seems
rather marginal to me." 3. Of extremely small probability of
[8494]winning. "The power supply was rather marginal anyway; no wonder
it fried."

Node:Marginal Hacks, Next:[8495]marginally, Previous:[8496]marginal,
Up:[8497]= M =

Marginal Hacks n.

Margaret Jacks Hall, a building into which the Stanford AI Lab was
moved near the beginning of the 1980s (from the [8498]D. C. Power

Node:marginally, Next:[8499]marketroid, Previous:[8500]Marginal Hacks,
Up:[8501]= M =

marginally adv.

Slightly. "The ravs here are only marginally better than at Small
Eating Place." See [8502]epsilon.

Node:marketroid, Next:[8503]Mars, Previous:[8504]marginally,
Up:[8505]= M =

marketroid /mar'k*-troyd/ n.

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

Node:Mars, Next:[8507]martian, Previous:[8508]marketroid, Up:[8509]= M

Mars n.

A legendary tragic failure, the archetypal Hacker Dream Gone Wrong.
Mars was the code name for a family of PDP-10 compatible computers
built by Systems Concepts (now, The SC Group): the multi-processor
SC-30M, the small uniprocessor SC-25M, and the never-built
superprocessor SC-40M. These machines were marvels of engineering
design; although not much slower than the unique [8510]Foonly F-1,
they were physically smaller and consumed less power than the much
slower [8511]DEC KS10 or Foonly F-2, F-3, or F-4 machines. They were
also completely compatible with the DEC KL10, and ran all KL10
binaries (including the operating system) with no modifications at
about 2-3 times faster than a KL10.

When DEC cancelled the Jupiter project in 1983, Systems Concepts
should have made a bundle selling their machine into shops with a lot
of software investment in PDP-10s, and in fact their spring 1984
announcement generated a great deal of excitement in the PDP-10 world.
TOPS-10 was running on the Mars by the summer of 1984, and TOPS-20 by
early fall. Unfortunately, the hackers running Systems Concepts were
much better at designing machines than at mass producing or selling
them; the company allowed itself to be sidetracked by a bout of
perfectionism into continually improving the design, and lost
credibility as delivery dates continued to slip. They also overpriced
the product ridiculously; they believed they were competing with the
KL10 and VAX 8600 and failed to reckon with the likes of Sun
Microsystems and other hungry startups building workstations with
power comparable to the KL10 at a fraction of the price. By the time
SC shipped the first SC-30M to Stanford in late 1985, most customers
had already made the traumatic decision to abandon the PDP-10, usually
for VMS or Unix boxes. Most of the Mars computers built ended up being
purchased by CompuServe.

This tale and the related saga of [8512]Foonly hold a lesson for
hackers: if you want to play in the [8513]Real World, you need to
learn Real World moves.

Node:martian, Next:[8514]massage, Previous:[8515]Mars, Up:[8516]= M =

martian n.

A packet sent on a TCP/IP network with a source address of the test
loopback interface []. This means that it will come back
labeled with a source address that is clearly not of this earth. "The
domain server is getting lots of packets from Mars. Does that gateway
have a martian filter?" Compare [8517]Christmas tree packet,

Node:massage, Next:[8519]math-out, Previous:[8520]martian, Up:[8521]=
M =

massage vt.

[common] Vague term used to describe `smooth' transformations of a
data set into a different form, esp. transformations that do not lose
information. Connotes less pain than [8522]munch or [8523]crunch. "He
wrote a program that massages X bitmap files into GIF format." Compare

Node:math-out, Next:[8525]Matrix, Previous:[8526]massage, Up:[8527]= M

math-out n.

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

Node:Matrix, Next:[8531]maximum Maytag mode, Previous:[8532]math-out,
Up:[8533]= M =

Matrix n.

[FidoNet] 1. What the Opus BBS software and sysops call [8534]FidoNet.
2. Fanciful term for a [8535]cyberspace expected to emerge from
current networking experiments (see [8536]the network). The name of
the rather good 1999 [8537]cypherpunk movie "The Matrix" played on
this sense, which however had been established for years before. 3.
The totality of present-day computer networks (popularized in this
sense by John Quarterman; rare outside academic literature).

Node:maximum Maytag mode, Next:[8538]meatspace, Previous:[8539]Matrix,
Up:[8540]= M =

maximum Maytag mode n.

What a [8541]washing machine or, by extension, any disk drive is in
when it's being used so heavily that it's shaking like an old Maytag
with an unbalanced load. If prolonged for any length of time, can lead
to disks becoming [8542]walking drives. In 1999 it's been some years
since hard disks were large enough to do this, but the same phenomenon
has recently been reported with 24X CD-ROM drives.

Node:meatspace, Next:[8543]meatware, Previous:[8544]maximum Maytag
mode, Up:[8545]= M =

meatspace /meet'spays/ n.

The physical world, where the meat lives - as opposed to
[8546]cyberspace. Hackers are actually more willing to use this term
than `cyberspace', because it's not speculative - we already have a
running meatspace implementation (the universe). Compare [8547]RL.

Node:meatware, Next:[8548]meeces, Previous:[8549]meatspace, Up:[8550]=
M =

meatware n.

Synonym for [8551]wetware. Less common.

Node:meeces, Next:[8552]meg, Previous:[8553]meatware, Up:[8554]= M =

meeces /mees'*z/ n.

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

Node:meg, Next:[8556]mega-, Previous:[8557]meeces, Up:[8558]= M =

meg /meg/ n.

See [8559]quantifiers.

Node:mega-, Next:[8560]megapenny, Previous:[8561]meg, Up:[8562]= M =

mega- /me'g*/ pref.

[SI] See [8563]quantifiers.

Node:megapenny, Next:[8564]MEGO, Previous:[8565]mega-, Up:[8566]= M =

megapenny /meg'*-pen`ee/ n.

$10,000 (1 cent * 10^6). Used semi-humorously as a unit in comparing
computer cost and performance figures.

Node:MEGO, Next:[8567]meltdown network, Previous:[8568]megapenny,
Up:[8569]= M =

MEGO /me'goh/ or /mee'goh/

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

Node:meltdown network, Next:[8572]meme, Previous:[8573]MEGO,
Up:[8574]= M =

meltdown, network n.

See [8575]network meltdown.

Node:meme, Next:[8576]meme plague, Previous:[8577]meltdown network,
Up:[8578]= M =

meme /meem/ n.

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

Node:meme plague, Next:[8580]memetics, Previous:[8581]meme, Up:[8582]=
M =

meme plague n.

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

Node:memetics, Next:[8584]memory farts, Previous:[8585]meme plague,
Up:[8586]= M =

memetics /me-met'iks/ n.

[from [8587]meme] The study of memes. As of early 1999, this is still
an extremely informal and speculative endeavor, though the first steps
towards at least statistical rigor have been made by H. Keith Henson
and others. Memetics is a popular topic for speculation among hackers,
who like to see themselves as the architects of the new information
ecologies in which memes live and replicate.

Node:memory farts, Next:[8588]memory leak, Previous:[8589]memetics,
Up:[8590]= M =

memory farts n.

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

Node:memory leak, Next:[8591]memory smash, Previous:[8592]memory
farts, Up:[8593]= M =

memory leak n.

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

Node:memory smash, Next:[8602]menuitis, Previous:[8603]memory leak,
Up:[8604]= M =

memory smash n.

[XEROX PARC] Writing through a pointer that doesn't point to what you
think it does. This occasionally reduces your machine to a rubble of
bits. Note that this is subtly different from (and more general than)
related terms such as a [8605]memory leak or [8606]fandango on core
because it doesn't imply an allocation error or overrun condition.

Node:menuitis, Next:[8607]mess-dos, Previous:[8608]memory smash,
Up:[8609]= M =

menuitis /men`yoo-i:'tis/ n.

Notional disease suffered by software with an obsessively
simple-minded menu interface and no escape. Hackers find this
intensely irritating and much prefer the flexibility of command-line
or language-style interfaces, especially those customizable via macros
or a special-purpose language in which one can encode useful hacks.
See [8610]user-obsequious, [8611]drool-proof paper, [8612]WIMP
environment, [8613]for the rest of us.

Node:mess-dos, Next:[8614]meta, Previous:[8615]menuitis, Up:[8616]= M

mess-dos /mes-dos/ n.

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

Node:meta, Next:[8619]meta bit, Previous:[8620]mess-dos, Up:[8621]= M

meta /me't*/ or /may't*/ or (Commonwealth) /mee't*/ adj.,pref.

[from analytic philosophy] One level of description up. A
metasyntactic variable is a variable in notation used to describe
syntax, and meta-language is language used to describe language. This
is difficult to explain briefly, but much hacker humor turns on
deliberate confusion between meta-levels. See [8622]hacker humor.

Node:meta bit, Next:[8623]metasyntactic variable, Previous:[8624]meta,
Up:[8625]= M =

meta bit n.

The top bit of an 8-bit character, which is on in character values
128-255. Also called [8626]high bit, [8627]alt bit, or (rarely)
[8628]hobbit. Some terminals and consoles (see [8629]space-cadet
keyboard) have a META shift key. Others (including, mirabile dictu,
keyboards on IBM PC-class machines) have an ALT key. See also
[8630]bucky bits.

Historical note: although in modern usage shaped by a universe of
8-bit bytes the meta bit is invariably hex 80 (octal 0200), things
were different on earlier machines with 36-bit words and 9-bit bytes.
The MIT and Stanford keyboards (see [8631]space-cadet keyboard)
generated hex 100 (octal 400) from their meta keys.

Node:metasyntactic variable, Next:[8632]MFTL, Previous:[8633]meta bit,
Up:[8634]= M =

metasyntactic variable n.

A name used in examples and understood to stand for whatever thing is
under discussion, or any random member of a class of things under
discussion. The word [8635]foo is the [8636]canonical example. To
avoid confusion, hackers never (well, hardly ever) use `foo' or other
words like it as permanent names for anything. In filenames, a common
convention is that any filename beginning with a
metasyntactic-variable name is a [8637]scratch file that may be
deleted at any time.

Metasyntactic variables are so called because (1) they are variables
in the metalanguage used to talk about programs etc; (2) they are
variables whose values are often variables (as in usages usages like
"the value of f(foo,bar) is the sum of foo and bar"). However, it has
been plausibly suggested that the real reason for the term
"metasyntactic variable" is that it sounds good.

To some extent, the list of one's preferred metasyntactic variables is
a cultural signature. They occur both in series (used for related
groups of variables or objects) and as singletons. Here are a few
common signatures:

[8638]foo, [8639]bar, [8640]baz, [8641]quux, quuux, quuuux...:
MIT/Stanford usage, now found everywhere (thanks largely to
early versions of this lexicon!). At MIT (but not at Stanford),
[8642]baz dropped out of use for a while in the 1970s and '80s.
A common recent mutation of this sequence inserts [8643]qux
before [8644]quux.

bazola, ztesch:
Stanford (from mid-'70s on).

[8645]foo, [8646]bar, thud, grunt:
This series was popular at CMU. Other CMU-associated variables
include [8647]gorp.

[8648]foo, [8649]bar, fum:
This series is reported to be common at XEROX PARC.

[8650]fred, jim, sheila, [8651]barney:
See the entry for [8652]fred. These tend to be Britishisms.

[8653]corge, [8654]grault, [8655]flarp:
Popular at Rutgers University and among [8656]GOSMACS hackers.

zxc, spqr, wombat:
Cambridge University (England).

Berkeley, GeoWorks, Ingres. Pronounced /shme/ with a short /e/.

foo, bar, baz, bongo
Yale, late 1970s.

[8657]Python programmers.

Brown University, early 1970s.

[8658]foo, [8659]bar, zot
Helsinki University of Technology, Finland.

blarg, wibble
New Zealand.

toto, titi, tata, tutu

pippo, pluto, paperino
Italy. Pippo /pee'po/ and Paperino /pa-per-ee'-no/ are the
Italian names for Goofy and Donald Duck.

aap, noot, mies
The Netherlands. These are the first words a child used to
learn to spell on a Dutch spelling board.

oogle, foogle, boogle; zork, gork, bork
These two series (which may be continued with other initial
consonents) are reportedly common in England, and said to go
back to Lewis Carroll.

Of all these, only `foo' and `bar' are universal (and [8660]baz nearly
so). The compounds [8661]foobar and `foobaz' also enjoy very wide

Some jargon terms are also used as metasyntactic names; [8662]barf and
[8663]mumble, for example. See also [8664]Commonwealth Hackish for
discussion of numerous metasyntactic variables found in Great Britain
and the Commonwealth.

Node:MFTL, Next:[8665]mickey, Previous:[8666]metasyntactic variable,
Up:[8667]= M =


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

The first great goal in the mind of the designer of an MFTL is usually
to write a compiler for it, then bootstrap the design away from
contamination by lesser languages by writing a compiler for it in
itself. Thus, the standard put-down question at an MFTL talk is "Has
it been used for anything besides its own compiler?" On the other
hand, a (compiled) language that cannot even be used to write its own
compiler is beneath contempt. (The qualification has become necessary
because of the increasing popularity of interpreted languages like
[8669]Perl and [8670]Python. See [8671]break-even point.

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

Node:mickey, Next:[8674]mickey mouse program, Previous:[8675]MFTL,
Up:[8676]= M =

mickey n.

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

Node:mickey mouse program, Next:[8677]micro-, Previous:[8678]mickey,
Up:[8679]= M =

mickey mouse program n.

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

Node:micro-, Next:[8681]MicroDroid, Previous:[8682]mickey mouse
program, Up:[8683]= M =

micro- pref.

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

Node:MicroDroid, Next:[8689]microfloppies, Previous:[8690]micro-,
Up:[8691]= M =

MicroDroid n.

[Usenet] A Microsoft employee, esp. one who posts to various
operating-system advocacy newsgroups. MicroDroids post follow-ups to
any messages critical of Microsoft's operating systems, and often end
up sounding like visiting fundamentalist missionaries. See also
[8692]astroturfing; compare [8693]microserf.

Node:microfloppies, Next:[8694]microfortnight,
Previous:[8695]MicroDroid, Up:[8696]= M =

microfloppies n.

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

Node:microfortnight, Next:[8700]microLenat,
Previous:[8701]microfloppies, Up:[8702]= M =

microfortnight n.

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

Multiple uses of the millifortnight (about 20 minutes) and
[8703]nanofortnight have also been reported.

Node:microLenat, Next:[8704]microReid, Previous:[8705]microfortnight,
Up:[8706]= M =

microLenat /mi:`-kroh-len'-*t/ n.

The unit of [8707]bogosity. consensus is that this is the largest unit
practical for everyday use. The microLenat, originally invented by
David Jefferson, was promulgated as an attack against noted computer
scientist Doug Lenat by a [8708]tenured graduate student at CMU. Doug
had failed the student on an important exam because the student gave
only "AI is bogus" as his answer to the questions. The slur is
generally considered unmerited, but it has become a running gag
nevertheless. Some of Doug's friends argue that of course a microLenat
is bogus, since it is only one millionth of a Lenat. Others have
suggested that the unit should be redesignated after the grad student,
as the microReid.

Node:microReid, Next:[8709]microserf, Previous:[8710]microLenat,
Up:[8711]= M =

microReid /mi:'kroh-reed/ n.

See [8712]microLenat.

Node:microserf, Next:[8713]Microsloth Windows,
Previous:[8714]microReid, Up:[8715]= M =

microserf /mi:'kro-s*rf/

[popularized, though not originated, by Douglas Copeland's book
"Microserfs"] A programmer at [8716]Microsoft, especially a low-level
coder with little chance of fame or fortune. Compare [8717]MicroDroid.

Node:Microsloth Windows, Next:[8718]Microsoft,
Previous:[8719]microserf, Up:[8720]= M =

Microsloth Windows /mi:'kroh-sloth` win'dohz/ n.

(Variants combine {Microshift, Macroshaft, Microsuck} with {Windoze,
WinDOS}. Hackerism(s) for `Microsoft Windows'. A thirty-two bit
extension and graphical shell to a sixteen bit patch to an eight bit
operating system originally coded for a four bit microprocessor which
was written by a two-bit company that can't stand one bit of
competition. Also just called `Windoze', with the implication that you
can fall asleep waiting for it to do anything; the latter term is
extremely common on Usenet. See [8721]Black Screen of Death and
[8722]Blue Screen of Death; compare [8723]X, [8724]sun-stools.

Node:Microsoft, Next:[8725]micros~1, Previous:[8726]Microsloth
Windows, Up:[8727]= M =


The new [8728]Evil Empire (the old one was [8729]IBM). The basic
complaints are, as formerly with IBM, that (a) their system designs
are horrible botches, (b) we can't get [8730]source to fix them, and
(c) they throw their weight around a lot. See also [8731]Halloween

Node:micros~1, Next:[8732]middle-endian, Previous:[8733]Microsoft,
Up:[8734]= M =


An abbreviation of the full name [8735]Microsoft resembling the rather
[8736]bogus way Windows 9x's VFAT filesystem truncates long file names
to fit in the MS-DOS 8+3 scheme (the real filename is stored
elsewhere). If other files start with the same prefix, they'll be
called micros~2 and so on, causing lots of problems with backups and
other routine system-administration problems. During the US Antitrust
trial against Microsoft the names Micros~1 ans Micros~2 were suggested
for the two companies that would exist after a break-up.

Node:middle-endian, Next:[8737]middle-out implementation,
Previous:[8738]micros~1, Up:[8739]= M =

middle-endian adj.

Not [8740]big-endian or [8741]little-endian. Used of perverse byte

Book of the day: