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 =
lint
[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 companies.
_________________________________________________________________
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 (Thompson).
_________________________________________________________________
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 servers.
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 acceptance).
_________________________________________________________________
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 =
LISP n.
[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 nothing”.
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 languages.
_________________________________________________________________
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 example).
_________________________________________________________________
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, [8160]math-out.
_________________________________________________________________
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 [8165]backronym.
_________________________________________________________________
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 `delurking’.
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 =
M$
Common net abbreviation for Microsoft, everybody’s least favorite monopoly.
_________________________________________________________________
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, [8346]benchmark.
_________________________________________________________________
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 [8351]Macintrash.
_________________________________________________________________
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 quantification.
_________________________________________________________________
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 =
magic
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 !
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 =
mailbomb
(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 [8461]schroedinbug.
_________________________________________________________________
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 world.”
_________________________________________________________________
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 Lab).
_________________________________________________________________
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 [127.0.0.1]. 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, [8518]Godzillagram.
_________________________________________________________________
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 [8524]slurp.
_________________________________________________________________
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 reasons.
_________________________________________________________________
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, [8601]leak.
_________________________________________________________________
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).
shme
Berkeley, GeoWorks, Ingres. Pronounced /shme/ with a short /e/.
foo, bar, baz, bongo
Yale, late 1970s.
spam
[8657]Python programmers.
snork
Brown University, early 1970s.
[8658]foo, [8659]bar, zot
Helsinki University of Technology, Finland.
blarg, wibble
New Zealand.
toto, titi, tata, tutu
France.
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 currency.
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 =
MFTL /M-F-T-L/
[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 performance.
_________________________________________________________________
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 microfortnights!
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 =
Microsoft
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 Documents.
_________________________________________________________________
Node:micros~1, Next:[8732]middle-endian, Previous:[8733]Microsoft, Up:[8734]= M =
micros~1
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