Xref: utzoo alt.folklore.computers:10438 comp.misc:11778 Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!sun-barr!rutgers!cbmvax!snark!eric From: eric@snark.thyrsus.com (Eric S. Raymond) Newsgroups: alt.folklore.computers,comp.misc Subject: The Jargon File v2.8.1, 22 MAR 1991, part 1 of 19 Message-ID: <1ZsDw9#0sRGg92DHlsW0wchzG6FD8WO=eric@snark.thyrsus.com> Date: 22 Mar 91 23:37:23 GMT Lines: 1004 Submitted-by: jargon@thyrsus.com Archive-name: jargon/part01 ---- Cut Here and feed the following to sh ---- #!/bin/sh # This is jargon, a shell archive (produced by shar 3.49) # To extract the files from this archive, save it to a file, remove # everything above the "!/bin/sh" line above, and type "sh file_name". # # made 03/22/1991 19:04 UTC by jargon@thyrsus.com # Source directory /usr2/eric/jargon # # existing files will NOT be overwritten unless -c is specified # # This is part 1 of a multipart archive # do not concatenate these parts, unpack them in order with /bin/sh # # This shar contains: # length mode name # ------ ---------- ------------------------------------------ # 888333 -rw-r--r-- jargon.ascii # if test -r _shar_seq_.tmp; then echo 'Must unpack archives in sequence!' echo Please unpack part `cat _shar_seq_.tmp` next exit 1 fi # ============= jargon.ascii ============== if test -f 'jargon.ascii' -a X"$1" != X"-c"; then echo 'x - skipping jargon.ascii (File already exists)' rm -f _shar_wnt_.tmp else > _shar_wnt_.tmp sed 's/^X//' << 'SHAR_EOF' > 'jargon.ascii' && X============ THIS IS THE JARGON FILE, VERSION 2.8.1, 22 MAR 1991 ============ X XCopyright 1991 by Eric S. Raymond, all rights reserved. Permission to Xmake copies and derived works for non-profit use is granted as long as Xthis notice is not removed. X XIntroduction X************ X XThis document is a collection of slang terms used by various Xsubcultures of computer hackers. Though some technical material is Xincluded for background and flavor, it is not a technical dictionary; Xwhat we describe here is the language hackers use among themselves for Xfun, social communication, and technical debate within their communities. X XThe `hacker culture' is actually a loosely networked collection of Xsubcultures that is nevertheless conscious of some important shared Xexperiences, shared roots, and shared values. It has its own myths, Xheroes, villains, folk epics, in-jokes, taboos, and dreams. Because Xhackers as a group are particularly creative people who define Xthemselves partly by rejection of `normal' values and working habits, Xit has unusually rich and conscious traditions for an intentional Xculture less than thirty-five years old. X XAs usual with slang, the special vocabulary of hackers helps hold Xtheir culture together --- it helps hackers recognize each other's Xplaces in the community and expresses shared values and experiences. XAlso as usual, *not* knowing the slang (or using it Xinappropriately) defines one as an outsider, a mundane, or (worst of Xall in hackish vocabulary) possibly even a *suit*. All human Xcultures use slang in this threefold way --- as a tool of Xcommunication, and of inclusion, and of exclusion. X XAmong hackers, though, slang has a subtler aspect paralleled perhaps Xin the slang of jazz musicians and some kinds of fine artists but hard Xto detect in most technical or scientific cultures; parts of it are Xcode for shared states of *consciousness*. There is a whole Xrange of altered states and problem-solving mental stances basic to Xhigh-level hacking which don't fit into conventional linguistic Xreality any better than a Coltrane solo or one of Maurits Escher's X`trompe l'oeil' compositions (Escher is a favorite of hackers), Xand hacker slang encodes these subtleties in many unobvious ways. XTake the distinction between a {kluge} and an {elegant} solution, Xand the differing connotations attached to each, as a simple example. XThe distinction is not only of engineering significance; it reaches Xright back into the nature of the generative processes in program Xdesign and asserts something important about two different kinds of Xrelationship between the hacker and the hack. Hacker slang is Xunusually rich in implications of this kind, of overtones and Xundertones that illuminate the hackish psyche. X XBut there is more. Hackers, as a rule, love word-play and are very Xconscious and inventive in their use of language. These traits seem Xto be common in young children, but the conformity-enforcing machine Xwe are pleased to call an educational system bludgeons them out of Xmost of us before adolescence. Thus, linguistic invention in most Xsubcultures of ours is a halting and largely unconscious process. XHackers, by contrast, regard slang formation and use as a game to be Xplayed for conscious pleasure. Their inventions thus display an Xalmost unique combination of the neotenous enjoyment of language-play Xwith the discrimination of educated and powerful intelligence. XFurther, the electronic media which knit them together are fluid, X`hot' connections, well adapted to both the dissemination of new slang Xand the ruthless culling of weak and superannuated specimens. The Xresults of this process give us perhaps a uniquely intense ans Xaccelerated view of linguistic evolution in action. X XThe intensity and consciousness of hackish invention makes a Xcompilation of hacker slang a particularly effective window into the Xsurrounding culture --- and, in fact, this one is the latest version Xof an evolving compilation called the `Jargon File' maintained by Xhackers themselves for over fifteen years. This one (like its Xancestors) is primarily a lexicon, but also includes `topic entries' Xwhich collect background or sidelight information on hacker culture Xthat would be awkward to try to subsume under individual entries. X XThough the format is that of a reference, it is also intended that the Xmaterial be enjoyable to browse or read straight through. Even a Xcomplete outsider should find at least a chuckle on nearly every page, Xand much that is amusingly thought-provoking. But it is also true Xthat hackers use humorous word-play to make strong, sometime combative Xstatements about what they feel. Some of these entries reflect the Xviews of opposing sides in disputes that have been genuinely Xpassionate; this is deliberate. We have not tried to moderate or Xpretty up these disputes; rather we have attempted to ensure that X*everyone's* sacred cows get gored, impartially. Compromise is Xnot particularly a hackish virtue, but the honest presentation of Xdivergent viewpoints is. X XThe reader with minimal computer background who finds some references Xincomprehensibly technical can safely ignore them. We have not felt Xit either necessary or desirable to eliminate all such; they, too, Xcontribute flavor, and one of this document's major intended audiences X(fledgling hackers already partway inside the culture) will benefit Xfrom them. X XA selection of longer items of hacker folklore and humor are included Xin Appendix A. The `outside' reader's attention is particularly Xdirected to Appendix B, the Portrait of J. Random Hacker. Appendix C Xis a bibliography of non-technical works which have either influenced Xor described the hacker culture. X XBecause hackerdom is an intentional culture (one each individual must Xchoose by action to join), one should not be surprised that the line Xbetween description and influence can become more than a little Xblurred. Earlier Jargon File versions have played a central role in Xspreading hacker language and the culture that goes with it to Xsuccessively larger populations, and we hope and expect that this one Xwill do likewise. X XOf Slang, Jargon, and Techspeak X=============================== X XLinguists usually refer to informal language as `slang' and reserve Xthe term `jargon' for the technical vocabularies of various Xoccupations. However, the ancestor of this collection was called the X`Jargon File' and hackish slang is traditionally `the jargon'. When Xtalking about the jargon there is therefore no convenient way to Xdistinguish what a *linguist* would call hackers' jargon --- the Xformal vocabulary they learn from textbooks, technical papers, and Xmanuals. X XTo make a confused situation worse, the line between hackish slang and Xtechnical programming and computer science vocabulary is fuzzy, and Xshifts over time. Further, this technical vocabulary is shared with a Xwider technical culture of programmers, many of whom are not hackers Xand do not speak or recognize hackish slang. X XAccordingly, this lexicon will try to be as precise as the facts of Xusage permit about the distinctions between three categories: X X * `slang': informal language from mainstream English or non-techical X subcultures (bikers, rock fans, surfers, etc.). X * `jargon': without qualifier, denotes informal `slangy' language X peculiar to hackers --- the subject of this lexicon. X * `techspeak': the formal technical vocabulary of programming, X computer science, electronics, and other fields connected to hacking. X XThis terminology will be consistently used throughout the remainder of Xthis lexicon. X XThe jargon/techspeak distinction is the delicate one. A lot of Xtechspeak originated as jargon, and there is a steady continuing Xuptake of jargon into techspeak. On the other hand, a lot of jargon Xarises from overgeneralization of techspeak terms (there is more about Xthis in the `Jargon Construction' section below). X XIn general, we have considered techspeak any term which communicates Xprimarily by a denotation well established in textbooks, technical Xdictionaries, or standards documents. X XA few obviously techspeak terms (names of operating systems, languages Xor documents) are listed when they are tied to hacker folklore that Xisn't covered in formal sources, or sometimes to convey critical Xhistorical background necessary to understand other entries to which Xthey are cross-referenced. Some other techspeak senses of jargon Xwords have been listed in order to make the jargon senses clear; where Xthe text does not specify that a straight technical sense is under Xdiscussion, these are marked with `[techspeak]' as an etymology. Many Xentries have a sense #1 marked this way, with subsequent jargon Xmeanings explained in terms of it. X XWe have also tried to indicate (where known) the apparent origins of Xterms. The results are probably the least reliable information in the Xlexicon, for several reasons. For one thing, it is well known that Xmany hackish usages have been independently re-invented multiple Xtimes, even among the more obscure and intricate neologisms. It often Xseems that the generative processes underlying hackish jargon Xformation have an internal logic so powerful as to create substantial Xparallelism across separate cultures and even in different languages! XFor another, the networks tend to propagate innovations so quickly Xthat `first use' is often impossible to pin down. And, finally, Xcompendia like this one alter what they observe by implicitly stamping Xcultural approval on terms and widening their use. X XRevision History X================ X XThe original Jargon File was a collection of hacker jargon from Xtechnical cultures including the MIT AI Lab, the Stanford AI lab X(SAIL), and others of the old ARPANET AI/LISP/PDP-10 communities Xincluding Bolt Beranek and Newman (BBN), Carnegie-Mellon University X(CMU), and Worcester Polytechnic Institute (WPI). X XThe Jargon File (hereafter referred to as `jargon-1' or `the File') Xwas begun by Raphael Finkel at Stanford in 1975. From this time until Xthe plug was finally pulled on the SAIL computer in 1991 the File was Xnamed AIWORD.RF[UP,DOC] there. Some terms in it date back Xconsiderably earlier ({frob} and some senses of {moby}, for Xinstance, go back to the Tech Model Railroad Club and MIT and are Xbelieved to date at least back to the early 1960s). The revisions of Xjargon-1 were all unnumbered and may be collectively considered X`Version 1'. X XIn 1976, Mark Crispin brought the File to MIT; he and Guy Steele then Xadded a first wave of new entries. X XIn 1976, Mark Crispin, having seen an announcement about the File on Xthe SAIL computer, {FTP}ed a copy of the File to MIT. He noticed that Xit was hardly restricted to `AI words' and so stored the file on Xhis directory as AI:MRC;SAIL JARGON. X XThe file was quickly renamed to JARGON > (the `>' means numbered with Xa version number) as a flurry of enhancements were made by Mark XCrispin and Guy L. Steele. Unfortunately, amidst all this activity, Xnobody thought of correcting the term `jargon' to `slang' until the Xcompendium had become widely known as the Jargon File it was too late. X XRaphael Finkel dropped out of active participation shortly thereafter, Xand Don Woods became the SAIL contact for the File (which was Xsubsequently kept in duplicate at SAIL and MIT, with periodic Xre-synchronizations). X XThe File expanded by fits and starts until about 1983; Richard XStallman was prominent among the contributors, adding many MIT and XITS-related coinages. X XA late version of jargon-1, expanded with commentary for the mass Xmarket, was edited by Guy L. Steele into a book published in 1983 as X`The Hacker's Dictionary' (Harper & Row CN 1082, ISBN X0-06-091082-8). The other jargon-1 editors (Raphael Finkel, Don XWoods, and Mark Crispin) contributed to the revision, as did Richard XM. Stallman and Geoff Goodfellow. This book is hereafter referred to Xas `Steele-1983'. It is now out of print. X XShortly after the publication of Steele-1983, the File effectively Xstopped growing and changing. Originally, this was because of a Xdesire to freeze the file temporarily to facilitate the production of XSteele-1983, but external conditions caused the `temporary' freeze Xbecame permanent. X XThe AI-Lab culture had been hit hard in the late 1970s by funding Xcuts, and the resulting administrative decision to use vendor-supported Xhardware and software instead of homebrew whenever possible. At MIT, Xmost AI work had turned to dedicated LISP Machines. At the same time, Xthe commercialization of AI technology lured some of the AI Labs' best Xand brightest away to startups along the Route 128 strip in XMassachusetts and out west to Silicon Valley. The startups built LISP Xmachines for MIT; the central MIT-AI computer became a {TWENEX} Xsystem rather than a host for the AI hackers' beloved {ITS}. X XThe Stanford AI Lab had effectively ceased to exist by 1980, although Xthe SAIL computer continued as a Computer Science Department resource Xuntil 1991. Stanford became a major {TWENEX} site, at one point Xoperating more than a dozen TOPS-20 systems; but by the mid-1980's Xmost of the interesting software work was being done on the emerging XBSD Unix standard. X XIn April 1983, the PDP-10-centered cultures that had nourished the XFile were dealt a death-blow by the cancellation of the Jupiter Xproject at DEC. The File's compilers, already dispersed, moved on to Xother things. Steele-1983 was partly a monument to what its authors Xthought was a dying tradition; no one involved realized at the time Xjust how widely its influence was to run. X XBy the mid-1980s the File's content was dated, but the legend that had Xgrown up around it never quite died out. The book, and softcopies Xobtained off the ARPANET, circulated even in cultures far removed from XMIT's and Stanford's; the content exerted a strong and continuing Xinfluence on hackish language and humor. Even as the advent of the Xmicrocomputer and other trends fueled a tremendous expansion of Xhackerdom, the File (and related materials like the AI Koans in XAppendix A) came to be seen as a sort of sacred epic, a hacker-culture XMatter of Britain chronicling the heroic exploits of the Knights of Xthe Lab. The pace of change in hackerdom at large accelerated Xtremendously --- but the Jargon File, having passed from living Xdocument to icon, remained essentially untouched for seven years. X XThis revision contains nearly the entire text of a late version of Xjargon-1 (a few obsolete PDP-10-related entries have been dropped Xfollowing careful consultation with the editors of Steele-1983). It Xmerges in about about 80% of the Steele-1983 text, omitting some Xframing material and a very few entries introduced in Steele-1983 Xwhich are now also obsolete. X XThis new version casts a wider net than the old jargon file; its aim Xis to cover not just AI or PDP-10 hacker culture but all the technical Xcomputing cultures wherein the true hacker-nature is manifested. More Xthan half of the entries now derive from USENET and represent jargon Xnow current in the C and UNIX communities, but special efforts have Xbeen made to collect jargon from other cultures including IBM PC Xprogrammers, Amiga fans, Mac enthusiasts, and even the IBM mainframe Xworld. X XWhere a term can be attributed to a particular subculture or is known Xto have originated there, we have tried to so indicate. Here is a Xlist of abbreviations used in etymologies: X XBerkeley X University of California at Berkeley XCambridge X The university in England (*not* the city in Massachusetts where X MIT happens to be located!) XBBN X Bolt, Beranek & Newman XCMU X Carnegie-Mellon University XCommodore X Commodore Business Machines XDEC X The Digital Equipment Corporation. XFairchild X The Fairchild Instruments Palo Alto development group. XFidonet X See the {Fidonet} entry. XIBM X International Business Machines XMIT X Massachusetts Institute of Technology; esp. the legendary MIT AI Lab X culture of roughly 1971 to 1983. See also TMRC. XNYU X New York University XPurdue X Purdue University XSAIL X Stanford Artificial Intelligence Laboratory XStanford X Stanford University XSun X Sun Microsystems XTMRC X Some MITisms go back as far as the Tech Model Railroad Club (TMRC) at X MIT c.1960. Material marked TMRC is from `An Abridged Dictionary X of the TMRC Language', originally compiled by Pete Samson in 1959. XUCLA X University of California at Los Angeles XUSENET X See the {USENET} entry. XWPI X Worcester Polytechnic Institute, site of a very active community of X PDP-10 hackers during the Seventies. XXEROX PARC X XEROX's Palo Alto Research Center, site of much pioneering research in X user interface design and networking. XYale X Yale University X XSome other etymology abbreviations such as {UNIX}, {PDP-10}, etc. Xrefer to technical cultures surrounding specific operating systems, Xprocessors, or other environments. Note: the fact that a term is Xlabelled with any of these abbreviations does not necessarily mean its Xuse is confined to that culture. In particular, many terms labelled X`MIT' and `Stanford' are in quite general use. We have tried to give Xsome indication of speaker distribution in the usage notes. However, Xa number of factors mentioned in the introduction conspire to make Xthese indications less definite than might be desirable. X XEric S. Raymond (eric@snark.thyrsus.com) maintains the new File with Xassistance from Guy L. Steele (gls@think.com); these are the persons Xprimarily reflected in the File's editorial `we', though we take Xpleasure in acknowledging the special contribution of the other Xcoauthors of Steele-1983. Please email all additions, corrections and Xcorrespondence relating to the jargon file to jargon@thyrsus.com X(UUCP-only sites without connections to an autorouting smart site can Xuse ...!uunet!snark!jargon). X X(Warning: other email addresses appear in this file *but are not Xguaranteed to be correct* later than the revision date on the first Xline. *Don't* email us if an attempt to reach your idol bounces X--- we have no magic way of checking addresses or looking up people) X XSome snapshot of this on-line version will become the main text of a X`New Hacker's Dictionary', to be published by MIT Press possibly as Xearly as Summer 1991. The maintainers are committed to updating the Xon-line version of the jargon file through and beyond paper Xpublication, and will continue to make it available to archives and Xpublic-access sites as a trust of the hacker community. X XHere is a chronology of the recent on-line revisions: X XVersion 2.1.1, Jun 12 1990: the jargon file comes alive again after a Xseven-year hiatus. Reorganization and massive additions were by Eric XS. Raymond, approved by Guy Steele. Many items of UNIX, C, USENET, and Xmicrocomputer-based jargon were added at that time (as well as The XUntimely Demise of Mabel The Monkey). Some obsolete usages (mostly XPDP-10 derived) were moved to Appendix B. X XVersion 2.1.5, Nov 28 1990: changes and additions by ESR in response to Xnumerous USENET submissions and comment from the First Edition co-authors. XThe bibliography (Appendix C) was also appended. X XVersion 2.2.1, Dec 15 1990: most of the contents of the 1983 paper Xedition edited by Guy Steele was merged in. Many more USENET Xsubmissions added, including the International Style and the material Xon Commonwealth Hackish. This version had 9394 lines, 75954 words, X490501 characters, and 1046 entries. X XVersion 2.3.1, Jan 03 1991: the great format change --- case is no Xlonger smashed in lexicon keys and cross-references. A very few Xentries from jargon-1 which were basically straight techspeak were Xdeleted; this enabled the rest of Appendix B to be merged back into Xmain text and the appendix replaced with the Portrait of J. Random XHacker. More USENET submissions were added. This version had 10728 Xlines, 85070 words, 558261 characters, and 1138 entries. X XVersion 2.4.1, Jan 14 1991: the Story of Mel and many more USENET Xsubmissions merged in. More material on hackish writing habits added. XNumerous typo fixes. This version had 12362 lines, 97819 words, X642899 characters, and 1239 entries. X XVersion 2.5.1, Jan 29 1991: many new entries merged in. Discussion of Xinclusion styles added. This version had 14145 lines, 111904 words, X734285 characters, and 1425 entries. X XVersion 2.6.1, Feb 13 1991: second great format change; no more <> Xaround headwords or references. Merged in results of serious Xcopy-editing passes by Guy Steele, Mark Brader. Still more entries Xadded. This version had 15011 lines, 118277 words, 774942 characters, Xand 1485 entries. X XVersion 2.7.1, Mar 1 1991: new section on slang/jargon/techspeak Xadded. Results of Guy's 2nd edit pass merged in. This version had X16087 lines, 126885 words, 831872 characters, and 1533 entries. X XVersion 2.8.1, Mar 22 1991: material from the TMRC Dictionary and XMRC's editing pass merged in. This version had 17154 lines, 135647 Xwords, 888333 characters, and 1602 entries. X XVersion numbering: Read versions as major.minor.revision. XMajor version 1 is reserved for the `old' (ITS) Jargon File, jargon-1. XMajor version 2 encompasses revisions by ESR (Eric S. Raymond) with Xassistance from GLS (Guy L. Steele). Someday, the next maintainer will Xtake over and spawn `version 3'. Usually later versions will either Xcompletely supersede or incorporate earlier versions, so there is Xgenerally no point in keeping old versions around. X XOur thanks to the other co-authors of Steele-1983 for oversight and Xassistance; also to all the USENETters who contributed entries and Xencouragement. Special thanks go to our Scandinavian correspondent XPer Lindberg (per@front.se), author of the remarkable Swedish Xlanguage 'zine `Hackerbladet', for bringing FOO! comics to our Xattention and smuggling one of the IBM hacker underground's own baby Xjargon files out to us. Also, much gratitude to ace hacker/linguist XJoe Keane (jkg@osc.osc.com) for helping us improve the pronunciation Xguides; and to Maarten Litmaath for generously allowing the inclusion Xof the ASCII pronunciation guide he formerly maintained. Don Libes Xcontributed some appropriate material from his excellent book X`Life With UNIX'. Linguists David Stampe and Charles Hoequist Xalso contributed valuable criticism. Finally, Mark Brader X(msb@sq.com) submitted many thoughtful comments and did yeoman Xservice in catching typos and minor usage bobbles, and Eric Tiedemann X(est@thyrsus.com) contributed sage advice on rhetoric, amphigory, and Xphilosophunculism. X XFormat For New Entries X====================== X XTry to conform to the format already being used --- head-words Xseparated from text by a colon (double colon for topic entries), Xcross-references in curly brackets (doubled for topic entries), Xpronunciations in slashes, etymologies in square brackets, Xsingle-space after definition numbers and word classes, etc. Stick to Xthe standard ASCII character set (7-bit printable, no high-half Xcharacters or [nt]roff/TeX/Scribe escapes), as one of the versions Xgenerated from the master file is an info document that has to be Xviewable on a character tty. X XWe are looking to expand the file's range of technical specialties covered. XThere are doubtless rich veins of jargon yet untapped in the scientific Xcomputing, graphics, and networking hacker communities; also in numerical Xanalysis, computer architectures and VLSI design, language design, and many Xother related fields. Send us your jargon! X XWe are *not* interested in straight technical terms explained by Xtextbooks or technical dictionaries unless an entry illuminates X`underground' meanings or aspects not covered by official histories. XWe are also not interested in `joke' entries --- there is a lot of Xhumor in the file but it must flow naturally out of the explanations Xof what hackers do and how they think. X XIt is OK to submit items of jargon you have originated if they have spread Xto the point of being used by people who are not personally acquainted with Xyou. We prefer items to be attested by independent submission from two Xdifferent sites. X XA few new definitions attached to entries are marked [proposed]. XThese are usually generalizations suggested by editors or USENET Xrespondents in the process of commenting on previous definitions of Xthose entries. These are *not* represented as established Xjargon. X XThe jargon file will be regularly maintained and re-posted from now on and Xwill include a version number. Read it, pass it around, contribute --- this Xis *your* monument! X XJargon Construction X=================== X XThere are some standard methods of jargonification which became Xestablished quite early (i.e. before 1970), spreading from such Xsources as the MIT Model Railroad Club, the PDP-1 SPACEWAR hackers, Xand John McCarthy's original crew of LISPers. These include: X XVerb doubling: A standard construction in English is to double a verb Xand use it as an exclamation, such as "Bang, bang!" or "Quack, Xquack!". Most of these are names for noises. Hackers also double Xverbs as a concise, sometimes sarcastic comment on what the implied Xsubject does. Also, a doubled verb is often used to terminate a Xconversation, in the process remarking on the current state of affairs Xor what the speaker intends to do next. Typical examples involve X{win}, {lose}, {hack}, {flame}, {barf}, {chomp}: X X "The disk heads just crashed." "Lose, lose." X "Mostly he talked about his latest crock. Flame, flame." X "Boy, what a bagbiter! Chomp, chomp!" X XSome verb-doubled constructions have special meanings not immediately Xobvious from the verb. These have their own listings in the lexicon. X XSoundalike slang: Hackers will often make rhymes or puns in order to Xconvert an ordinary word or phrase into something more interesting. XIt is considered particularly {flavorful} if the phrase is bent so Xas to include some other jargon word; thus the computer hobbyist Xmagazine `Dr. Dobb's Journal' is almost always referred to among Xhackers as `Dr. Frob's Journal' or simply `Dr. Frob's'. Terms of Xthis kind that have been in fairly wide use include names for Xnewspapers: X X Boston Herald American => Horrid (or Harried) American X Boston Globe => Boston Glob X Houston (or San Francisco) Chronicle X => the Crocknicle (or the Comical) X New York Times => New York Slime X XHowever, terms like these are often made up on the spur of the moment. XStandard examples include: X X Prime Time => Slime Time X Data General => Dirty Genitals X IBM 360 => IBM Three-Sickly X Government Property --- Do Not Duplicate (seen on keys) X => Government Duplicity --- Do Not Propagate X for historical reasons => for hysterical raisins X Margaret Jacks Hall => Marginal Hacks Hall X XThis is not really similar to the Cockney rhyming slang it has been Xcompared to in the past, because Cockney substitutions are opaque Xwhereas hacker punning jargon is intentionally transparent. X XThe -P convention: turning a word into a question by appending the Xsyllable `P'; from the LISP convention of appending the letter `P' Xto denote a predicate (a Boolean-valued function). The question Xshould expect a yes/no answer, though it needn't. (See T and NIL.) X X At dinnertime: X Q: "Foodp?" X A: "Yeah, I'm pretty hungry." or "T!" X X Q: "State-of-the-world-P?" X A: (Straight) "I'm about to go home." X A: (Humorous) "Yes, the world has a state." X X On the phone to Florida: X Q: "State-p Florida?" X A: "Been reading JARGON.TXT again, eh?" X X[One of the best of these is a {Gosperism} Once, when we were at a XChinese restaurant, Bill Gosper wanted to know whether someone would Xlike to share with him a two-person-sized bowl of soup. His inquiry Xwas: "Split-p soup?" --- GLS] X XOvergeneralization: A very conspicuous feature of jargon is the Xfrequency with which techspeak items like names of program tools, Xcommand language primitives, and even assembler opcodes are applied to Xcontexts outside of computing wherever hackers find amusing analogies Xto them. Thus, (to cite one of the best-known examples) UNIX hackers Xoften {grep} for things rather than searching for them. Many of the Xlexicon entries are generalizations of exactly this kind. X XHackers enjoy overgeneralization on the grammatical level as well. XMany hackers love to take various words and add the wrong endings to Xthem to make nouns and verbs, often by extending a standard rule to Xnonuniform cases (or vice versa). For example, because X X porous => porosity X generous => generosity X Xhackers happily generalize: X X mysterious => mysteriosity X ferrous => ferrosity X obvious => obviosity X dubious => dubiosity X XAlso, note that all nouns can be verbed. E.g.: "All nouns can be Xverbed", "I'll mouse it up", "Hang on while I clipboard it over", X"I'm grepping the files". English as a whole is already heading in Xthis direction (towards pure-positional grammar like Chinese); Xhackers are simply a bit ahead of the curve. X XSimilarly, all verbs can be nouned. Thus: X X win => winnitude, winnage X disgust => disgustitude X hack => hackification X XFinally, note the prevalence of certain kinds of nonstandard plural Xforms. Some of these go back quite a ways; the TMRC Dictionary noted Xthat the defined plural of `caboose' is `cabeese'. On a similarly XAnglo-Saxon note, almost anything ending in `x' may form plurals in X-xen (see {VAXen} and {boxen} in the main text). Even words Xending in phonetic /k/ alone are sometimes treated this way; e.g. X`soxen' for a bunch of socks. Other funny plurals are `frobbotzim' Xfor the plural of `frobbozz' (see {frobnitz}) and `Unices' and X`Tenices' (rather than `Unixes' and `Tenexes'; see {UNIX}, {TENEX} Xin main text). But note that `Unixen' and `Tenexen' are *never* Xused; it has been suggested that this is because `-ix' and `-ex' are XLatin singular endings that attract a Latinate plural. X XThe pattern here, as with other hackish grammatical quirks, is Xgeneralization of an inflectional rule which (in English) is either Xan import or a fossil (such as Hebrew plural in `-im', or the XAnglo-Saxon plural in `-en') to cases where it isn't normally Xconsidered to apply. X XThis is not `poor grammar', as hackers are generally quite well Xaware of what they are doing when they distort the language. It is Xgrammatical creativity, a form of playfulness. X XSpoken inarticulations: Words such as `mumble', `sigh', and X`groan' are spoken in places where their referent might more Xnaturally be used. It has been suggested that this usage derives from Xthe impossibility of representing such noises on a comm link or in Xemail. Another expression sometimes heard is "Complain!", meaning X"I have a complaint!" X XOf the five listed constructions, verb doubling, peculiar noun Xformations, and (especially!) spoken inarticulations have become quite Xgeneral; but punning jargon is still largely confined to MIT and other Xlarge universities, and the -P convention is found only where LISPers Xflourish. X XFinally, note that many words in hacker jargon have to be Xunderstood as members of sets of comparatives. This is especially Xtrue of the adjectives and nouns used to describe the beauty and Xfunctional quality of code. Here is an approximately correct Xspectrum: X X MONSTROSITY BRAIN-DAMAGE SCREW BUG LOSE MISFEATURE X CROCK KLUGE HACK WIN FEATURE ELEGANCE PERFECTION X XThe last is spoken of as a mythical absolute, approximated but never Xactually attained. Coinages for describing {lossage} seem to call Xforth the very finest in hackish linguistic inventiveness; it has been Xtruly said that "{Computer geeks} have more words for equipment Xfailures than Inuit have for snow", or than Yiddish has for obnoxious Xpeople. X XHacker Speech Style X=================== X XThis features extremely precise diction, careful word choice, a Xrelatively large working vocabulary, and relatively little use of Xcontractions or `street slang'. Dry humor, irony, puns, and a Xmildly flippant attitude are highly valued --- but an underlying Xseriousness and intelligence is essential. One should use just Xenough jargon to communicate precisely and identify oneself as `in Xthe culture'; overuse of jargon or a breathless, excessively Xgung-ho attitude are considered tacky and the mark of a loser. X XThis speech style is a variety of the precisionist English normally Xspoken by scientists, design engineers, and academics in technical Xfields. Unlike the jargon construction methods, it is fairly constant Xthroughout hackerdom. X XIt has been observed that many hackers are confused by negative Xquestions --- or, at least, the people they're talking to are often Xconfused by the sense of their answers. The problem is that they've Xdone so much coding that distinguishes between X X if (going) { X Xand X X if (!going) { X Xthat when they parse the question "Aren't you going?" it seems to be Xasking the opposite question from "Are you going?", and so merits an Xanswer in the opposite sense. This confuses English-speaking Xnon-hackers because they were taught to answer as though the negative Xpart weren't there. In some other languages (including Russian, XChinese and Japanese) the hackish interpretation is standard and the Xproblem wouldn't arise. Hackers often find themselves wishing for a Xword like French `si' or German `doch' with which one could Xunambiguously answer `yes' to a negative question. X XFor similar reasons, English-speaking hackers almost never use a Xdouble negative even if they live in a region where colloquial usage Xallows it. The thought of uttering something that logically ought to Xbe an affirmative knowing it will be mis-parsed as a negative tends to Xdisturb them. X XHacker Writing Style X==================== X XWe've already seen that hackers often coin jargon by overgeneralizing Xgrammatical rules. This is one aspect of a more general fondness for Xform-versus-content language jokes that shows up particularly in Xhackish writing. One correspondent reports that he consistently Xmisspells `wrong' as `worng'. Others has been known to criticize Xglitches in Jargon File drafts by observing "This sentence no verb", Xor "Bad speling", or "Incorrectspa cing." Similarly, intentional XSpoonerisms are often made of phrases relating to confusion, or things Xwhich are confusing; `dain bramage' for `brain damage' is perhaps the Xmost common (similarly, a hacker would be likely to write "Excuse me, XI'm cixelsyd today", rather than "I'm dyslexic..."). This sort of Xthing is quite common and enjoyed by all concerned. X XHackers tend to use quotes as balanced delimiters like parentheses, Xmuch to the dismay of American editors. Thus, if "Jim is going" is Xa phrase, and so is "Bill runs" and "Spock groks", then hackers Xgenerally prefer to write: "Jim is going", "Bill runs", and X"Spock groks". This is incorrect according to standard American Xusage (which would put the continuation commas and the final period Xinside the string quotes) but it is counter-intuitive to hackers to Xmutilate literal strings with characters that don't belong in them. XGiven the sorts of examples that can come up in discussing Xprogramming, American-style quoting can even be grossly misleading. XWhen communicating command lines or small pieces of code, extra Xcharacters can be a real pain in the neck. For example: X X First do "foo -acrZ tempo | bar -," then ... X Xis different from X X First do "foo -acrZ tempo | bar -", then ... X Xfrom a computer's point of view. While the first is correct according Xto the stylebooks and would probably be parsed correctly by the a Xhuman recipient, the second is unambiguous. The Jargon File follows Xhackish usage consistently throughout. X XInterestingly, a similar style is now preferred practice in Great XBritain, though the older style (which became established for Xtypographical reasons having to do with the aesthetics of comma and Xquotes in typeset text) is still accepted there. Hart's Rules and the XOxford Dictionary for Writers and Editors call the hacker-like style X`new' or `logical' style quoting. X XAnother hacker quirk about quoting style is a tendency to distinguish Xbetween `scare' quotes and `speech' quotes; that is, to use XBritish-style single quotes for marking and reserve American-style Xdouble quotes for actual reports of speech or text included from Xelsewhere. Interestingly, some authorities describe this as correct Xgeneral usage, but mainstream American English has gone to using Xdouble-quotes thoroughly enough that hacker usage appears marked [and, Xin fact, I thought this was a personal quirk of mine until I checked Xwith USENET --- ESR]. One further permutation that is definitely X*not* standard is a hackish tendency to do marking quotes by Xusing apostrophes in pairs; that is, 'like this'. This is modelled on Xstring and character literal syntax in some programming languages X(reinforced by the fact that many character-only terminals display a Xvertical single quote). X XThere seems to be a meta-rule behind these nonstandard hackerisms to Xthe effect that precision of expression is more important than Xconformance to traditional rules; where the latter create ambiguity or Xlose information they can be discarded without a second thought. It Xis notable in this respect that other hackish inventions (for example, Xin vocabulary) also tend to carry very precise shades of meaning even Xwhen constructed to appear slangy and loose. In fact, to a hacker, Xthe contrast between `loose' form and `tight' content in jargon is a Xsubstantial part of its humor! X XThere is another respect in which hackish usage often parallels XBritish usage; it tends to choose British spellings whenever these Xseem more phonetically consistent than the American ones. X XHackers have also developed a number of punctuation and emphasis Xconventions adapted to single-font all-ASCII communications links, and Xthese are occasionally carried over into written documents even when Xnormal means of font changes, underlining, and the like are available. X XOne of these is that TEXT IN ALL CAPS IS INTERPRETED AS `LOUD', and Xthis becomes such an ingrained synesthetic reflex that a person who Xgoes to caps-lock while in {talk mode} may be asked to "stop Xshouting, please, you're hurting my ears!". X XAlso, it is common to use bracketing with asterisks to signify Xemphasis, as in "What the *hell*?" (note that this interferes with Xthe common use of asterisk suffix as a footnote mark). An alternative Xform uses paired slash and backslash: "What the \hell/?". The Xlatter is never used in text documents, as many formatters treat Xbackslash as an escape and may do inappropriate things with the Xfollowing text. Yet another form emphasizes text L I K E T H I S. XAlso note that there is a semantic difference between *emphasis like Xthis*, (which emphasizes the phrase as a whole) and *emphasis* *like* X*this* (which suggests the writer speaking very slowly and distinctly, Xas if to a very young child or mentally impaired person). See also Xthe lexicon entry for {emoticon}. X XIn a formula, `*' signifies multiplication but two asterisks in a Xrow are a shorthand for exponentiation (this derives from FORTRAN). XThus, one might write `2 ** 8 = 256'. X XAnother notation for exponentiation one sees more frequently uses the Xcaret (^, ASCII 1011110); one might write instead `2 ^ 8 = 256'. XThis goes all the way back to Algol-60, which used the archaic ASCII X`up-arrow' that later became caret; this was picked up by Kemeny & XKurtz's original BASIC, which in turn influenced the design of the Xbc(1) and dc(1) UNIX tools that have probably done most to reinforce Xthe convention on USENET. The notation is mildly confusing to C Xprogrammers, because `^' means logical {XOR} in C. Despite Xthis, it was favored 3:1 over ** in a late-1990 snapshot of USENET. XIt is used consistently in this text. X XIn on-line exchanges, hackers tend to write improper fractions in Xratio or decimal form rather than `typewriter' style: that is, `7/2' Xor `3.5' rather than `3-1/2'. The major motive here is probably that Xthe former are more readable in a monospaced font, and avoid the risk Xthat the latter might be read as `three minus one-half'. The decimal Xform is definitely preferred for fractions with a terminating decimal Xrepresentation; there may be some cultural influence here from the Xhigh status of scientific notation. X XAnother on-line convention, used especially for very large or very small Xnumbers, is taken from C (which derived it from FORTRAN). This is a Xform of `scientific notation' using `e' to replace `*10^'; for example, Xone year is about 3e7 seconds long . X XThe tilde (~) is commonly used in a quantifying sense of X`approximately'; that is, `~50' means `about fifty'. X XUnderlining is often suggested by substituting underscores for spaces Xand prepending and appending one underscore to the underlined phrase. XExample: "It is often alleged that Haldeman wrote _The_Forever_War_ Xin response to Robert Heinlein's earlier _Starship_Troopers_." XOccasionally this underline indication is used for emphasis, like the Xpaired asterisks. X XThere is also an accepted convention for `writing under erasure'; the Xtext X X Be nice to this fool^H^H^H^Hgentleman, he's in from corporate HQ. X Xwould be read as "Be nice to this fool, I mean this gentleman...". XThis comes from the fact that the digraph ^H is often used as a print Xrepresentation for a backspace. It parallels (and may have been Xinfluenced by) the ironic use of `slashouts' in science-fiction fanzines. X XOn USENET and in the {MUD} world, common C boolean, logical, and Xrelational operators such as (`|', `&', `!', `==', `!=', `>', and `<') Xare often combined with English. The Pascal not-equals, `<>', is also Xrecognized. The use of prefix `!' as a loose synonym for `not-' or X`no-' is particularly common; thus, `!clue' is read `no-clue' or X`clueless'. X XAnother habit is that of using angle-bracket enclosure to genericize a Xterm; this derives from conventions used in {BNF}. Uses like the Xfollowing are common: X X So this walks into a bar one day, and... X XOne quirk that shows up frequently in the {email} style of UNIX Xhackers in particular is a tendency for some things which are normally Xall-lowercase (including usernames and the names of commands and C Xroutines) to remain uncapitalized even when they occur at the Xbeginning of sentences. It is clear that, for many hackers, the case Xof such identifiers becomes a part of their internal representation X(the `spelling') and cannot be overridden without mental effort (an Xappropriate reflex because UNIX and C both distinguish cases and Xconfusing them can lead to lossage). A way of escaping this dilemma Xis simply to avoid using these constructions at the beginning of Xsentences. X XHackers also mix letters and numbers more freely than in mainstream Xusage. In particular, it is good hackish style to write a digit Xsequence where you intend the reader to understand the text string Xthat names that number in English. So, hackers write "1970s" rather Xthan "nineteen-seventies" or "1970's" (the later looks like a Xpossessive). X XFinally, it should be noted that hackers exhibit much less reluctance Xto use multiply nested parentheses than is normal in English. Partly Xthis is almost certainly due to influence from LISP ((which uses Xdeeply nested parentheses (like this) in its syntax) (a lot (see?))), Xbut it has also been suggested that a more basic hacker trait of Xenjoying playing with complexity and pushing systems to their limits Xis in operation. X XOne area where hackish conventions for on-line writing are still in Xsome flux is the marking of included material from earlier messages X--- what would be called `block quotations' in ordinary English. From Xthe usual typographic convention employed for these (smaller font at Xan extra indent), there derived the notation of included text being Xindented by one ASCII TAB (0001001) character, which under UNIX and Xmany other environments gives the appearance of an 8-space indent. X XEarly mail and netnews readers had no facility for including messages Xthis way, so people had to paste in copy manually. BSD `Mail(1)' Xwas the first message agent to support inclusion, and early USENETters Xemulated its style. But the TAB character tended to push included Xtext too far to the right (especially in multiply nested inclusions), Xleading to ugly wraparounds. After a brief period of confusion X(during which an inclusion leader consisting of three or four spaces Xbecame established in EMACS and a few mailers), the use of leading ">" Xor "> " became standard, perhaps because the character suggests Xmovement to the right (alternatively, it may derive from the ">" that Xsome V7 UNIX mailers use to quote leading instances of "From" in Xtext). Inclusions within inclusions keep their ">" leaders, so the X`nesting level' of a quotation is visually apparent. X XA few other idiosyncratic quoting styles survive because they're Xautomatically generated. One particularly ugly one looks like this: X X /* Written hh:mm pm Mmm dd, yyyy by user@site in local:group */ X /* ---------- "Subject of article chopped to 35 ch" ---------- */ X <> X /* End of text from local:group */ X XIt's generated by an elderly, variant news-reading system called X`notesfiles'. The overall trend, however, is definitely away from Xsuch verbosity. X XThe practice of including text helped solve what had been a major Xnuisance on USENET: the fact that articles do not arrive at different Xsites in the same order. Careless posters used to post articles that Xwould begin with, or even consist entirely of, "No, that's wrong", Xor "I agree" or the like. It was hard to see who was responding to Xwhat. Consequently, in about 1984, new news-posting software was Xcreated with a facility to automatically include the text of a Xprevious article, marked with "> " or whatever the poster chose. The Xposter was expected to delete all but the relevant lines. The result Xhas been that, now, careless posters post articles containing the X*entire* text of a preceding article, *followed* only by X"No, that's wrong" or "I agree". X XMany people feel that this cure is worse than the original disease, Xand there soon appeared newsreader software designed to let the reader Xskip over included text if desired. Today, some posting software Xrejects articles containing too high a proportion of lines beginning Xwith ">", but this too has led to undesirable workarounds such as the Xdeliberate inclusion of zero-content filler lines which aren't quoted Xand thus pull the message below the rejection threshold. X XBecause the default mailers supplied with UNIX and other operating Xsystems haven't evolved as quickly as human usage, the older Xconventions using a leading TAB or three or four spaces are still Xalive; however, >-inclusion is now clearly the prevalent form in both Xnetnews and mail. X XPractice is still evolving, and disputes over the `correct' inclusion Xstyle occasionally leads to {holy wars}. One variant style reported Xuses the citation character `|' in place of `>' for extended Xquotations where original variations in indentation are being Xretained. One also sees different styles of quoting a number of Xauthors in the same message: one (deprecated because it loses Xinformation) uses a leader of "> " for everyone, another (the most Xcommon) is "> > > > ", "> > > ", etc. (or ">>>> ", ">>> ", etc., Xdepending on line length and nesting depth) reflecting the original Xorder of messages, and yet another is to use a different citation Xleader for each author, say "> ", ": ", "| ", "} " (preserving Xnesting so that the inclusion order of messages is still apparent, or Xtagging the inclusions with authors' names). Yet *another* style Xis to use each poster's initials (or login name) as a citation leader Xfor that poster. Occasionally one sees a "# " leader used for Xquotations from *authoritative* sources such as standards Xdocuments; the intended allusion is to the root prompt (the special XUNIX command prompt issued when one is running as the privileged Xsuper-user). X XFinally, it is worth mentioning that many studies of on-line Xcommunication have shown that electronic links have a de-inhibiting Xeffect on people. Deprived of the body-language cues through which SHAR_EOF true || echo 'restore of jargon.ascii failed' fi echo 'End of part 1, continue with part 2' echo 2 > _shar_seq_.tmp exit 0