= L =

lace card n. obs. A punched card with all holes punched (also called a `whoopee card' or `ventilator card'). Card readers tended to jam when they got to one of these, as the resulting card had too little structural strength to avoid buckling inside the mechanism. Card punches could also jam trying to produce these things owing to power-supply problems. When some practical joker fed a lace card through the reader, you needed to clear the jam with a `card knife' --- which you used on the joker first.

language lawyer n. A person, usually an experienced or senior software engineer, who is intimately familiar with many or most of the numerous restrictions and features (both useful and esoteric) applicable to one or more computer programming languages. A language lawyer is distinguished by the ability to show you the five sentences scattered through a 200-plus-page manual that together imply the answer to your question "if only you had thought to look there". Compare wizard, legal, legalese.

languages of choice n. C and LISP. Nearly every hacker knows one of these, and most good ones are fluent in both. Smalltalk and Prolog are also popular in small but influential communities.

There is also a rapidly dwindling category of older hackers with FORTRAN, or even assembler, as their language of choice. They often prefer to be known as Real Programmers, and other hackers consider them a bit odd (see "The Story Of Mel, A Real Programmer" in Appendix A). Assembler is generally no longer considered interesting or appropriate for anything but HLL implementation, glue, and a few time-critical and hardware-specific uses in systems programs. FORTRAN occupies a shrinking niche in scientific programming.

Most hackers tend to frown on languages like Pascal and Ada, which don't give them the near-total freedom considered necessary for hacking (see bondage-and-discipline language), and to regard everything even remotely connected with COBOL or other traditional card walloper languages as a total and unmitigated loss.

larval stage n. Describes a period of monomaniacal concentration on coding apparently passed through by all fledgling hackers. Common symptoms include the perpetration of more than one 36-hour hacking run in a given week; neglect of all other activities including usual basics like food, sleep, and personal hygiene; and a chronic case of advanced bleary-eye. Can last from 6 months to 2 years, the apparent median being around 18 months. A few so afflicted never resume a more `normal' life, but the ordeal seems to be necessary to produce really wizardly (as opposed to merely competent) programmers. See also wannabee. A less protracted and intense version of larval stage (typically lasting about a month) may recur when one is learning a new OS or programming language.

lase /layz/ vt. To print a given document via a laser printer. "OK, let's lase that sucker and see if all those graphics-macro calls did the right things."

laser chicken n. Kung Pao Chicken, a standard Chinese dish containing chicken, peanuts, and hot red peppers in a spicy pepper-oil sauce. Many hackers call it `laser chicken' for two reasons: It can zap you just like a laser, and the sauce has a red color reminiscent of some laser beams.

In a variation on this theme, it is reported that some Australian hackers have redesignated the common dish `lemon chicken' as `Chernobyl Chicken'. The name is derived from the color of the sauce, which is considered bright enough to glow in the dark (as, mythically, do some of the inhabitants of Chernobyl).

Lasherism [Harvard] n. A program that solves a standard problem (such as the Eight Queens puzzle or implementing the life algorithm) in a deliberately nonstandard way. Distinguished from a crock or kluge by the fact that the programmer did it on purpose as a mental exercise. Such constructions are quite popular in exercises such as the Obfuscated C Contest, and occasionally in retrocomputing. Lew Lasher was a student at Harvard around 1980 who became notorious for such behavior.

laundromat n. Syn. disk farm; see washing machine.

LDB /l*'d*b/ [from the PDP-10 instruction set] vt. To extract from the middle. "LDB me a slice of cake, please." This usage has been kept alive by Common LISP's function of the same name. Considered silly. See also DPB.

leaf site n. A machine that merely originates and reads USENET news or mail, and does not relay any third-party traffic. Often uttered in a critical tone; when the ratio of leaf sites to backbone, rib, and other relay sites gets too high, the network tends to develop bottlenecks. Compare backbone site, rib site.

leak n. With qualifier, one of a class of resource-management bugs that occur when resources are not freed properly after operations on them are finished, so they effectively disappear (leak out). This leads to eventual exhaustion as new allocation requests come in. memory leak and fd leak have their own entries; one might also refer, to, say, a `window handle leak' in a window system.

leaky heap [Cambridge] n. An arena with a memory leak.

leapfrog attack n. Use of userid and password information obtained illicitly from one host (e.g., downloading a file of account IDs and passwords, tapping TELNET, etc.) to compromise another host. Also, the act of TELNETting through one or more hosts in order to confuse a trace (a standard cracker procedure).

legal adj. Loosely used to mean `in accordance with all the relevant rules', esp. in connection with some set of constraints defined by software. "The older =+ alternate for += is no longer legal syntax in ANSI C." "This parser processes each line of legal input the moment it sees the trailing linefeed." Hackers often model their work as a sort of game played with the environment in which the objective is to maneuver through the thicket of `natural laws' to achieve a desired objective. Their use of `legal' is flavored as much by this game-playing sense as by the more conventional one having to do with courts and lawyers. Compare language lawyer, legalese.

legalese n. Dense, pedantic verbiage in a language description, product specification, or interface standard; text that seems designed to obfuscate and requires a language lawyer to parse it. Though hackers are not afraid of high information density and complexity in language (indeed, they rather enjoy both), they share a deep and abiding loathing for legalese; they associate it with deception, suits, and situations in which hackers generally get the short end of the stick.

LER /L-E-R/ [TMRC, from `Light-Emitting Diode'] n. A light-emitting resistor (that is, one in the process of burning up). Ohm's law was broken. See also SED.

LERP /lerp/ vi.,n. Quasi-acronym for Linear Interpolation, used as a verb or noun for the operation. "Bresenham's algorithm lerps incrementally between the two endpoints of the line."

let the smoke out v. To fry hardware (see fried). See magic smoke for a discussion of the underlying mythology.

letterbomb

  1. n. A piece of email containing live data intended to do nefarious things to the recipient's machine or terminal. It is possible, for example, to send letterbombs that will lock up some specific kinds of terminals when they are viewed, so thoroughly that the user must cycle power (see cycle, sense 3) to unwedge them. Under UNIX, a letterbomb can also try to get part of its contents interpreted as a shell command to the mailer. The results of this could range from silly to tragic. See also Trojan Horse; compare nastygram.
  2. Loosely, a mailbomb.

lexer /lek'sr/ n. Common hacker shorthand for `lexical analyzer', the input-tokenizing stage in the parser for a language (the part that breaks it into word-like pieces). "Some C lexers get confused by the old-style compound ops like `=-'."

lexiphage /lek'si-fayj`/ n. A notorious word chomper on ITS. See bagbiter. This program would draw on a selected victim's bitmapped terminal the words "THE BAG" in ornate letters, followed a pair of jaws biting pieces of it off.

life n.

  1. A cellular-automata game invented by John Horton Conway and first introduced publicly by Martin Gardner ("Scientific American", October 1970); the game's popularity had to wait a few years for computers on which it could reasonably be played, as it's no fun to simulate the cells by hand. Many hackers pass through a stage of fascination with it, and hackers at various places contributed heavily to the mathematical analysis of this game (most notably Bill Gosper at MIT, who even implemented life in TECO!; see Gosperism). When a hacker mentions `life', he is much more likely to mean this game than the magazine, the breakfast cereal, or the human state of existence.
  2. The opposite of USENET. As in "Get A Life!"

Life is hard [XEROX PARC] prov. This phrase has two possible interpretations: (1) "While your suggestion may have some merit, I will behave as though I hadn't heard it." (2) "While your suggestion has obvious merit, equally obvious circumstances prevent it from being seriously considered." The charm of the phrase lies precisely in this subtle but important ambiguity.

light pipe n. Fiber optic cable. Oppose copper.

lightweight adj. Opposite of heavyweight; usually found in combining forms such as `lightweight process'.

like kicking dead whales down the beach adj. Describes a slow, difficult, and disgusting process. First popularized by a famous quote about the difficulty of getting work done under one of IBM's mainframe OSes. "Well, you *could* write a C compiler in COBOL, but it would be like kicking dead whales down the beach." See also fear and loathing.

like nailing jelly to a tree adj. Used to describe a task thought to be impossible, esp. one in which the difficulty arises from poor specification or inherent slipperiness in the problem domain. "Trying to display the `prettiest' arrangement of nodes and arcs that diagrams a given graph is like nailing jelly to a tree, because nobody's sure what `prettiest' means algorithmically."

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."

line eater, the [USENET] n.

  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 nailed to the wall, and is still humorously referred to. The bug itself is still (in mid-1991) occasionally reported to be lurking in some mail-to-netnews gateways.
  2. See NSA Line Eater.

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, 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 TECO; it is often claimed that "TECO's input syntax is indistinguishable from line noise." Other non-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 INTERCAL.

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. Unlike `line feed', `line starve' is *not* standard 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 nroff and troff) that suppresses a newline or other character(s) that would normally be emitted.

link farm [UNIX] n. 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 spaghetti code.

link-dead [MUD] adj. Said of a MUD character who has frozen in place because of a dropped Internet connection.

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 desk check at some non-UNIX shops, even in languages other than C. Also as v. delint.
  2. n. Excess verbiage in a document, as in "This draft has too much lint".

lion food [IBM] n. 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!"

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 never formally published and was only supposed to be distributed to affiliates of source licensees (it is still possible to get a Bell Labs reprint of the book by sending a copy of a V6 source license to the right person at Bellcore, but *real* insiders have the UNSW edition). In spite of this, it soon spread by samizdat to a good many of the early UNIX hackers.

LISP [from `LISt Processing language', but mythically from `Lots of Irritating Superfluous Parentheses'] n. 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 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 C. See 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 COBOL and Ada, are full of unnecessary crocks. When the Right Thing has already been done once, there is no justification for bogosity in newer languages.

literature, the n. Computer-science journals and other publications, vaguely gestured at to answer a question that the speaker believes is trivial. Thus, one might answer an annoying question by saying "It's in the literature." Oppose Knuth, which has no connotation of triviality.

lithium lick n. [NeXT] n. 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!"

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 big-endian, middle-endian, NUXI Problem. The term is sometimes used to describe the ordering of units other than bytes; most often, bits within a byte.

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 virus that is triggered the next time a hapless user strikes that key. For another, there are some well-known bugs in 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 hooks (executable code).
  3. An object, such as a trampoline, that is constructed on the fly by a program and intended to be executed as code.
  4. Actual real-world data, as opposed to `test data'. For example, "I think I have the record deletion module finished." "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 to the above claim 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-deletion module running amok on live data would probably cause great harm.

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 fascist design philosophies and crufty misfeatures common on commercial 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.

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 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.

liveware /li:v'weir/ n.

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

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 clone systems are sold in `lobotomized' form --- everything but the brain.

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."

locked and loaded [from military slang for an M-16 rifle with magazine inserted and prepared for firing] adj. 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 Winchester drives (which are named after a rifle).

locked up adj. Syn. for hung, wedged.

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 back door.

logical [from the technical term `logical device', wherein a physical device is referred to by an arbitrary `logical' name] adj. 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 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 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!)

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 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.

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

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

lose [MIT] vi.

  1. 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 deserves to lose.
  4. n. Refers to something that is losing, especially in the phrases "That's a lose!" and "What a lose!"

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

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 luser.

losing adj. Said of anything that is or causes a lose or lossage.

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 lossage.

lossage /los'*j/ n. 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 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.

lost in the noise adj. Syn. 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.

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 epsilon, epsilon squared; see also overflow bit.

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, is a notorious recent example).

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

LPT /L-P-T/ or /lip'it/ or /lip-it'/ n. Line printer, of course. 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 DEC conventions.

Lubarsky'S Law Of Cybernetic Entomology prov. "There is *always* one more bug."

lunatic fringe [IBM] n. Customers who can be relied upon to accept release 1 versions of software.

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 flamage-emitting regulars.

luser /loo'zr/ n. A user; esp. one who is also a loser. (luser and 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.