The program is

[1 J^P$L$$

J <.-Z; .,(S,$ -D .)FX1 @F^B $K :L I $ G1 L>$$

(where ^B means `Control-B' (ASCII 0000010) and $ is actually

an {alt} or escape (ASCII 0011011) character).

In fact, this very program was used to produce the second, sorted

list from the first list. The first hack at it had a {bug}: GLS

(the author) had accidentally omitted the `@' in front

of `F^B', which as anyone can see is clearly the {Wrong Thing}. It

worked fine the second time. There is no space to describe all the

features of TECO, but it may be of interest that `^P' means

`sort' and `J<.-Z; ... L>' is an idiomatic series of commands

for `do once for every line'.

In mid-1991, TECO is pretty much one with the dust of history,

having been replaced in the affections of hackerdom by {EMACS}.

Descendants of an early (and somewhat lobotomized) version adopted

by DEC can still be found lurking on VMS and a couple of crufty

PDP-11 operating systems, however, and ports of the more advanced

MIT versions remain the focus of some antiquarian interest. See

also {retrocomputing}, {write-only language}.

:tee: /n.,vt./ [Purdue] A carbon copy of an electronic

transmission. "Oh, you're sending him the {bits} to that?

Slap on a tee for me." From the Unix command `tee(1)',

itself named after a pipe fitting (see {plumbing}). Can also

mean `save one for me', as in "Tee a slice for me!" Also

spelled `T'.

:teledildonics: /tel`*-dil-do'-niks/ /n./ Sex in a computer

simulated virtual reality, esp. computer-mediated sexual

interaction between the {VR} presences of two humans. This

practice is not yet possible except in the rather limited form of

erotic conversation on {MUD}s and the like. The term, however,

is widely recognized in the VR community as a {ha ha only

serious} projection of things to come. "When we can sustain a

multi-sensory surround good enough for teledildonics, *then*

we'll know we're getting somewhere." See also {hot chat}.

:Telerat: /tel'*-rat/ /n. obs./ Unflattering hackerism for

`Teleray', a now-extinct line of extremely losing terminals.

Compare {AIDX}, {Macintrash} {Nominal Semidestructor},

{Open DeathTrap}, {ScumOS}, {sun-stools}, {HP-SUX}.

:TELNET: /tel'net/ /vt./ (also commonly lowercased as

`telnet') To communicate with another Internet host using the

TELNET ({RFC} 854) protocol (usually using a program of the same

name). TOPS-10 people used the word IMPCOM, since that was the

program name for them. Sometimes abbreviated to TN /T-N/. "I

usually TN over to SAIL just to read the AP News."

:ten-finger interface: /n./ The interface between two networks

that cannot be directly connected for security reasons; refers to

the practice of placing two terminals side by side and having an

operator read from one and type into the other.

:tense: /adj./ Of programs, very clever and efficient. A tense

piece of code often got that way because it was highly {bum}med,

but sometimes it was just based on a great idea. A comment in a

clever routine by Mike Kazar, once a grad-student hacker at CMU:

"This routine is so tense it will bring tears to your eyes." A

tense programmer is one who produces tense code.

:tentacle: /n./ A covert {pseudo}, sense 1. An artificial

identity created in cyberspace for nefarious and deceptive

purposes. The implication is that a single person may have

multiple tentacles. This term was originally floated in some

paranoid ravings on the cypherpunks list (see {cypherpunk}), and

adopted in a spirit of irony by other, saner members. It has since

shown up, used seriously, in the documentation for some remailer

software, and is now (1994) widely recognized on the net.

:tenured graduate student: /n./ One who has been in graduate

school for 10 years (the usual maximum is 5 or 6): a `ten-yeared'

student (get it?). Actually, this term may be used of any grad

student beginning in his seventh year. Students don't really get

tenure, of course, the way professors do, but a tenth-year graduate

student has probably been around the university longer than any

untenured professor.

:tera-: /te'r*/ /pref./ [SI] See {{quantifiers}}.

:teraflop club: /te'r*-flop kluhb/ /n./ [FLOP = Floating

Point Operation] A mythical association of people who consume

outrageous amounts of computer time in order to produce a few

simple pictures of glass balls with intricate ray-tracing

techniques. Caltech professor James Kajiya is said to have been

the founder. Compare {Knights of the Lambda Calculus}.

:terminak: /ter'mi-nak`/ /n./ [Caltech, ca. 1979] Any

malfunctioning computer terminal. A common failure mode of

Lear-Siegler ADM 3a terminals caused the `L' key to produce the `K'

code instead; complaints about this tended to look like "Terminak

#3 has a bad keyboard. Pkease fix." Compare {dread high-bit

disease}, {frogging}; see also {AIDX}, {Nominal

Semidestructor}, {Open DeathTrap}, {ScumOS}, {sun-stools},

{Telerat}, {HP-SUX}.

:terminal brain death: /n./ The extreme form of {terminal

illness} (sense 1). What someone who has obviously been hacking

continuously for far too long is said to be suffering from.

:terminal illness: /n./ 1. Syn. {raster burn}. 2. The

`burn-in' condition your CRT tends to get if you don't have a

screen saver.

:terminal junkie: /n./ [UK] A {wannabee} or early {larval

stage} hacker who spends most of his or her time wandering the

directory tree and writing {noddy} programs just to get a fix of

computer time. Variants include `terminal jockey', `console

junkie', and {console jockey}. The term `console jockey'

seems to imply more expertise than the other three (possibly

because of the exalted status of the {{console}} relative to an

ordinary terminal). See also {twink}, {read-only

user}.

:terpri: /ter'pree/ /vi./ [from LISP 1.5 (and later,

MacLISP)] To output a {newline}. Now rare as jargon, though

still used as techspeak in Common LISP. It is a contraction of

`TERminate PRInt line', named for the fact that, on some early OSes

and hardware, no characters would be printed until a complete line

was formed, so this operation terminated the line and emitted the

output.

:test: /n./ 1. Real users bashing on a prototype long enough to

get thoroughly acquainted with it, with careful monitoring and

followup of the results. 2. Some bored random user trying a couple

of the simpler features with a developer looking over his or her

shoulder, ready to pounce on mistakes. Judging by the quality of

most software, the second definition is far more prevalent. See

also {demo}.

:TeX:: /tekh/ /n./

An extremely powerful {macro}-based text formatter written by

Donald E. {Knuth}, very popular in the computer-science

community (it is good enough to have displaced Unix {{troff}}, the

other favored formatter, even at many Unix installations). TeX

fans insist on the correct (guttural) pronunciation, and the

correct spelling (all caps, squished together, with the E depressed

below the baseline; the mixed-case `TeX' is considered an

acceptable kluge on ASCII-only devices). Fans like to proliferate

names from the word `TeX' -- such as TeXnician (TeX

user), TeXhacker (TeX programmer), TeXmaster (competent

TeX programmer), TeXhax, and TeXnique. See also

{CrApTeX}.

Knuth began TeX because he had become annoyed at the declining

quality of the typesetting in volumes I--III of his monumental

"Art of Computer Programming" (see {Knuth}, also

{bible}). In a manifestation of the typical hackish urge to

solve the problem at hand once and for all, he began to design his

own typesetting language. He thought he would finish it on his

sabbatical in 1978; he was wrong by only about 8 years. The

language was finally frozen around 1985, but volume IV of "The

Art of Computer Programming" is not expected to appear until 2002.

The impact and influence of TeX's design has been such that

nobody minds this very much. Many grand hackish projects have

started as a bit of {toolsmith}ing on the way to something else;

Knuth's diversion was simply on a grander scale than most.

TeX has also been a noteworthy example of free, shared, but

high-quality software. Knuth used to offer monetary awards to

people who found and reported bugs in it; as the years wore on and

the few remaining bugs were fixed (and new ones even harder to

find), the bribe went up. Though well-written, TeX is so large

(and so full of cutting edge technique) that it is said to have

unearthed at least one bug in every Pascal system it has been

compiled with.

:text: /n./ 1. [techspeak] Executable code, esp. a `pure

code' portion shared between multiple instances of a program

running in a multitasking OS. Compare {English}. 2. Textual

material in the mainstream sense; data in ordinary {{ASCII}} or

{{EBCDIC}} representation (see {flat-ASCII}). "Those are

text files; you can review them using the editor." These two

contradictory senses confuse hackers, too.

:thanks in advance: [Usenet] Conventional net.politeness

ending a posted request for information or assistance. Sometimes

written `advTHANKSance' or `aTdHvAaNnKcSe' or abbreviated `TIA'.

See {net.-}, {netiquette}.

:That's not a bug, that's a feature!: The {canonical}

first parry in a debate about a purported bug. The complainant, if

unconvinced, is likely to retort that the bug is then at best a

{misfeature}. See also {feature}.

:the X that can be Y is not the true X: Yet another instance

of hackerdom's peculiar attraction to mystical references -- a

common humorous way of making exclusive statements about a class of

things. The template is from the "Tao te Ching": "The Tao

which can be spoken of is not the true Tao." The implication is

often that the X is a mystery accessible only to the enlightened.

See the {trampoline} entry for an example, and compare {has

the X nature}.

:theology: /n./ 1. Ironically or humorously used to refer to

{religious issues}. 2. Technical fine points of an abstruse

nature, esp. those where the resolution is of theoretical

interest but is relatively {marginal} with respect to actual use

of a design or system. Used esp. around software issues with a

heavy AI or language-design component, such as the smart-data vs.

smart-programs dispute in AI.

:theory: /n./ The consensus, idea, plan, story, or set of rules

that is currently being used to inform a behavior. This usage is a

generalization and (deliberate) abuse of the technical meaning.

"What's the theory on fixing this TECO loss?" "What's the

theory on dinner tonight?" ("Chinatown, I guess.") "What's

the current theory on letting lusers on during the day?" "The

theory behind this change is to fix the following well-known

screw...."

:thinko: /thing'koh/ /n./ [by analogy with `typo'] A

momentary, correctable glitch in mental processing, especially one

involving recall of information learned by rote; a bubble in the

stream of consciousness. Syn. {braino}; see also {brain

fart}. Compare {mouso}.

:This can't happen: Less clipped variant of {can't

happen}.

:This time, for sure!: /excl./ Ritual affirmation frequently

uttered during protracted debugging sessions involving numerous

small obstacles (e.g., attempts to bring up a UUCP connection).

For the proper effect, this must be uttered in a fruity imitation

of Bullwinkle J. Moose. Also heard: "Hey, Rocky! Watch me pull a

rabbit out of my hat!" The {canonical} response is, of course,

"But that trick *never* works!" See {{hacker humor}}.

:thrash: /vi./ To move wildly or violently, without

accomplishing anything useful. Paging or swapping systems that are

overloaded waste most of their time moving data into and out of

core (rather than performing useful computation) and are therefore

said to thrash. Someone who keeps changing his mind (esp. about

what to work on next) is said to be thrashing. A person

frantically trying to execute too many tasks at once (and not

spending enough time on any single task) may also be described as

thrashing. Compare {multitask}.

:thread: /n./ [Usenet, GEnie, CompuServe] Common abbreviation

of `topic thread', a more or less continuous chain of postings on

a single topic. To `follow a thread' is to read a series of

Usenet postings sharing a common subject or (more correctly) which

are connected by Reference headers. The better newsreaders can

present news in thread order automatically.

Interestingly, this is far from a neologism. The OED says:

"That which connects the successive points in anything, esp. a

narrative, train of thought, or the like; the sequence of events

or ideas continuing throughout the whole course of anything;"

Citations are given going back to 1642!

:three-finger salute: /n./ Syn. {Vulcan nerve pinch}.

:thud: /n./ 1. Yet another {metasyntactic variable} (see

{foo}). It is reported that at CMU from the mid-1970s the

canonical series of these was `foo', `bar', `thud', `blat'.

2. Rare term for the hash character, `#' (ASCII 0100011). See

{ASCII} for other synonyms.

:thumb: /n./ The slider on a window-system scrollbar. So

called because moving it allows you to browse through the contents

of a text window in a way analogous to thumbing through a book.

:thunk: /thuhnk/ /n./ 1. "A piece of coding which provides

an address", according to P. Z. Ingerman, who invented thunks in

1961 as a way of binding actual parameters to their formal

definitions in Algol-60 procedure calls. If a procedure is called

with an expression in the place of a formal parameter, the compiler

generates a thunk which computes the expression and leaves the

address of the result in some standard location. 2. Later

generalized into: an expression, frozen together with its

environment, for later evaluation if and when needed (similar to

what in techspeak is called a `closure'). The process of

unfreezing these thunks is called `forcing'. 3. A

{stubroutine}, in an overlay programming environment, that loads

and jumps to the correct overlay. Compare {trampoline}.

4. People and activities scheduled in a thunklike manner. "It

occurred to me the other day that I am rather accurately modeled by

a thunk -- I frequently need to be forced to completion." ---

paraphrased from a {plan file}.

Historical note: There are a couple of onomatopoeic myths

circulating about the origin of this term. The most common is that

it is the sound made by data hitting the stack; another holds that

the sound is that of the data hitting an accumulator. Yet another

suggests that it is the sound of the expression being unfrozen at

argument-evaluation time. In fact, according to the inventors, it

was coined after they realized (in the wee hours after hours of

discussion) that the type of an argument in Algol-60 could be

figured out in advance with a little compile-time thought,

simplifying the evaluation machinery. In other words, it had

`already been thought of'; thus it was christened a `thunk',

which is "the past tense of `think' at two in the morning".

:tick: /n./ 1. A {jiffy} (sense 1). 2. In simulations, the

discrete unit of time that passes between iterations of the

simulation mechanism. In AI applications, this amount of time is

often left unspecified, since the only constraint of interest is

the ordering of events. This sort of AI simulation is often

pejoratively referred to as `tick-tick-tick' simulation,

especially when the issue of simultaneity of events with long,

independent chains of causes is {handwave}d. 3. In the FORTH

language, a single quote character.

:tick-list features: /n./ [Acorn Computers] Features in

software or hardware that customers insist on but never use

(calculators in desktop TSRs and that sort of thing). The American

equivalent would be `checklist features', but this jargon sense

of the phrase has not been reported.

:tickle a bug: /vt./ To cause a normally hidden bug to manifest

itself through some known series of inputs or operations. "You

can tickle the bug in the Paradise VGA card's highlight handling by

trying to set bright yellow reverse video."

:tiger team: /n./ [U.S. military jargon] 1. Originally, a team

(of {sneaker}s) whose purpose is to penetrate security, and thus

test security measures. These people are paid professionals who do

hacker-type tricks, e.g., leave cardboard signs saying "bomb" in

critical defense installations, hand-lettered notes saying "Your

codebooks have been stolen" (they usually haven't been) inside

safes, etc. After a successful penetration, some high-ranking

security type shows up the next morning for a `security review'

and finds the sign, note, etc., and all hell breaks loose. Serious

successes of tiger teams sometimes lead to early retirement for

base commanders and security officers (see the {patch} entry for

an example). 2. Recently, and more generally, any official

inspection team or special {firefighting} group called in to

look at a problem.

A subset of tiger teams are professional {cracker}s, testing the

security of military computer installations by attempting remote

attacks via networks or supposedly `secure' comm channels. Some of

their escapades, if declassified, would probably rank among the

greatest hacks of all times. The term has been adopted in

commercial computer-security circles in this more specific sense.

:time bomb: /n./ A subspecies of {logic bomb} that is

triggered by reaching some preset time, either once or

periodically. There are numerous legends about time bombs set up

by programmers in their employers' machines, to go off if the

programmer is fired or laid off and is not present to perform the

appropriate suppressing action periodically.

Interestingly, the only such incident for which we have been

pointed to documentary evidence took place in the Soviet Union in

1986! A disgruntled programmer at the Volga Automobile Plant

(where the Fiat clones called Ladas were manufactured) planted a

time bomb which, a week after he'd left on vacation, stopped the

entire main assembly line for a day. The case attracted lots of

attention in the Soviet Union because it was the first cracking

case to make it to court there. The perpetrator got a suspended

sentence of 3 years in jail and was barred from future work as a

programmer.

:time sink: /n./ [poss. by analogy with `heat sink' or

`current sink'] A project that consumes unbounded amounts of

time.

:time T: /ti:m T/ /n./ 1. An unspecified but usually

well-understood time, often used in conjunction with a later time

T+1. "We'll meet on campus at time T or at Louie's

at time T+1" means, in the context of going out for dinner:

"We can meet on campus and go to Louie's, or we can meet at

Louie's itself a bit later." (Louie's was a Chinese restaurant in

Palo Alto that was a favorite with hackers.) Had the number 30

been used instead of the number 1, it would have implied that the

travel time from campus to Louie's is 30 minutes; whatever time

T is (and that hasn't been decided on yet), you can meet

half an hour later at Louie's than you could on campus and end up

eating at the same time. See also {since time T equals minus

infinity}.

:times-or-divided-by: /quant./ [by analogy with

`plus-or-minus'] Term occasionally used when describing the

uncertainty associated with a scheduling estimate, for either

humorous or brutally honest effect. For a software project, the

scheduling uncertainty factor is usually at least 2.

:Tinkerbell program: /n./ [Great Britain] A monitoring program

used to scan incoming network calls and generate alerts when calls

are received from particular sites, or when logins are attempted

using certain IDs. Named after `Project Tinkerbell', an

experimental phone-tapping program developed by British Telecom in

the early 1980s.

:tip of the ice-cube: /n./ [IBM] The visible part of

something small and insignificant. Used as an ironic comment in

situations where `tip of the iceberg' might be appropriate if the

subject were at all important.

:tired iron: /n./ [IBM] Hardware that is perfectly functional but far

enough behind the state of the art to have been superseded by new

products, presumably with sufficient improvement in bang-per-buck

that the old stuff is starting to look a bit like a {dinosaur}.

:tits on a keyboard: /n./ Small bumps on certain keycaps to

keep touch-typists registered (usually on the `5' of a numeric

keypad, and on the `F' and `J' of a {QWERTY} keyboard;

but the Mac, perverse as usual, has them on the `D' and

`K' keys).

:TLA: /T-L-A/ /n./ [Three-Letter Acronym] 1. Self-describing

abbreviation for a species with which computing terminology is

infested. 2. Any confusing acronym. Examples include MCA, FTP,

SNA, CPU, MMU, SCCS, DMU, FPU, NNTP, TLA. People who like this

looser usage argue that not all TLAs have three letters, just as

not all four-letter words have four letters. One also hears of

`ETLA' (Extended Three-Letter Acronym, pronounced /ee tee el

ay/) being used to describe four-letter acronyms. The term

`SFLA' (Stupid Four-Letter Acronym) has also been reported. See

also {YABA}.

The self-effacing phrase "TDM TLA" (Too Damn Many...) is

often used to bemoan the plethora of TLAs in use. In 1989, a

random of the journalistic persuasion asked hacker Paul Boutin

"What do you think will be the biggest problem in computing in

the 90s?" Paul's straight-faced response: "There are only

17,000 three-letter acronyms." (To be exact, there are 26^3

= 17,576.)

:TMRC: /tmerk'/ /n./ The Tech Model Railroad Club at MIT, one

of the wellsprings of hacker culture. The 1959 "Dictionary of

the TMRC Language" compiled by Peter Samson included several terms

that became basics of the hackish vocabulary (see esp. {foo},

{mung}, and {frob}).

By 1962, TMRC's legendary layout was already a marvel of complexity

(and has grown in the thirty years since; all the features

described here are still present). The control system alone

featured about 1200 relays. There were {scram switch}es located

at numerous places around the room that could be thwacked if

something undesirable was about to occur, such as a train going

full-bore at an obstruction. Another feature of the system was a

digital clock on the dispatch board, which was itself something of

a wonder in those bygone days before cheap LEDs and seven-segment

displays. When someone hit a scram switch the clock stopped and

the display was replaced with the word `FOO'; at TMRC the scram

switches are therefore called `foo switches'.

Steven Levy, in his book "Hackers" (see the

{Bibliography} in Appendix C), gives a stimulating account of

those early years. TMRC's Power and Signals group included most of

the early PDP-1 hackers and the people who later became the core of

the MIT AI Lab staff. Thirty years later that connection is still

very much alive, and this lexicon accordingly includes a number of

entries from a recent revision of the TMRC dictionary.

:TMRCie: /tmerk'ee/, /n./ [MIT] A denizen of {TMRC}.

:to a first approximation: /adj./ 1. [techspeak] When one is doing

certain numerical computations, an approximate solution may be

computed by any of several heuristic methods, then refined to a

final value. By using the starting point of a first approximation

of the answer, one can write an algorithm that converges more

quickly to the correct result. 2. In jargon, a preface to any

comment that indicates that the comment is only approximately true.

The remark "To a first approximation, I feel good" might indicate

that deeper questioning would reveal that not all is perfect (e.g.,

a nagging cough still remains after an illness).

:to a zeroth approximation: [from `to a first

approximation'] A *really* sloppy approximation; a wild

guess. Compare {social science number}.

:toad: /vt./ [MUD] 1. Notionally, to change a {MUD} player into

a toad. 2. To permanently and totally exile a player from the MUD.

A very serious action, which can only be done by a MUD {wizard};

often involves a lot of debate among the other characters first.

See also {frog}, {FOD}.

:toast: 1. /n./ Any completely inoperable system or component,

esp. one that has just crashed and burned: "Uh, oh ... I

think the serial board is toast." 2. /vt./ To cause a system to

crash accidentally, especially in a manner that requires manual

rebooting. "Rick just toasted the {firewall machine} again."

Compare {fried}.

:toaster: /n./ 1. The archetypal really stupid application for

an embedded microprocessor controller; often used in comments that

imply that a scheme is inappropriate technology (but see

{elevator controller}). "{DWIM} for an assembler? That'd

be as silly as running Unix on your toaster!" 2. A very, very

dumb computer. "You could run this program on any dumb toaster."

See {bitty box}, {Get a real computer!}, {toy}, {beige

toaster}. 3. A Macintosh, esp. the Classic Mac. Some hold that

this is implied by sense 2. 4. A peripheral device. "I bought my

box without toasters, but since then I've added two boards and a

second disk drive."

:toeprint: /n./ A {footprint} of especially small size.

:toggle: /vt./ To change a {bit} from whatever state it is

in to the other state; to change from 1 to 0 or from 0 to 1. This

comes from `toggle switches', such as standard light switches,

though the word `toggle' actually refers to the mechanism that

keeps the switch in the position to which it is flipped rather than

to the fact that the switch has two positions. There are four

things you can do to a bit: set it (force it to be 1), clear (or

zero) it, leave it alone, or toggle it. (Mathematically, one would

say that there are four distinct boolean-valued functions of one

boolean argument, but saying that is much less fun than talking

about toggling bits.)

:tool: 1. /n./ A program used primarily to create, manipulate,

modify, or analyze other programs, such as a compiler or an editor

or a cross-referencing program. Oppose {app}, {operating

system}. 2. [Unix] An application program with a simple,

`transparent' (typically text-stream) interface designed

specifically to be used in programmed combination with other tools

(see {filter}, {plumbing}). 3. [MIT: general to students

there] /vi./ To work; to study (connotes tedium). The TMRC

Dictionary defined this as "to set one's brain to the

grindstone". See {hack}. 4. /n./ [MIT] A student who studies

too much and hacks too little. (MIT's student humor magazine

rejoices in the name "Tool and Die".)

:toolsmith: /n./ The software equivalent of a tool-and-die

specialist; one who specializes in making the {tool}s with which

other programmers create applications. Many hackers consider this

more fun than applications per se; to understand why, see

{uninteresting}. Jon Bentley, in the "Bumper-Sticker Computer

Science" chapter of his book "More Programming Pearls",

quotes Dick Sites from DEC as saying "I'd rather write programs to

write programs than write programs".

:topic drift: /n./ Term used on GEnie, Usenet and other

electronic fora to describe the tendency of a {thread} to drift

away from the original subject of discussion (and thus, from the

Subject header of the originating message), or the results of that

tendency. Often used in gentle reminders that the discussion has

strayed off any useful track. "I think we started with a question

about Niven's last book, but we've ended up discussing the sexual

habits of the common marmoset. Now *that's* topic drift!"

:topic group: /n./ Syn. {forum}.

:TOPS-10:: /tops-ten/ /n./ DEC's proprietary OS for the

fabled {PDP-10} machines, long a favorite of hackers but now

effectively extinct. A fountain of hacker folklore; see Appendix

A. See also {{ITS}}, {{TOPS-20}}, {{TWENEX}}, {VMS},

{operating system}. TOPS-10 was sometimes called BOTS-10 (from

`bottoms-ten') as a comment on the inappropriateness of describing

it as the top of anything.

:TOPS-20:: /tops-twen'tee/ /n./ See {{TWENEX}}.

:tourist: /n./ [ITS] A guest on the system, especially one who

generally logs in over a network from a remote location for

{comm mode}, email, games, and other trivial purposes. One step

below {luser}. Hackers often spell this {turist}, perhaps by

some sort of tenuous analogy with {luser} (this also expresses

the ITS culture's penchant for six-letterisms). Compare

{twink}, {read-only user}.

:tourist information: /n./ Information in an on-line display

that is not immediately useful, but contributes to a viewer's

gestalt of what's going on with the software or hardware behind it.

Whether a given piece of info falls in this category depends partly

on what the user is looking for at any given time. The `bytes

free' information at the bottom of an MS-DOS `dir' display is

tourist information; so (most of the time) is the TIME information

in a Unix `ps(1)' display.

:touristic: /adj./ Having the quality of a {tourist}. Often

used as a pejorative, as in `losing touristic scum'. Often

spelled `turistic' or `turistik', so that phrase might be more

properly rendered `lusing turistic scum'.

:toy: /n./ A computer system; always used with qualifiers.

1. `nice toy': One that supports the speaker's hacking style

adequately. 2. `just a toy': A machine that yields insufficient

{computron}s for the speaker's preferred uses. This is not

condemnatory, as is {bitty box}; toys can at least be fun. It

is also strongly conditioned by one's expectations; Cray XMP users

sometimes consider the Cray-1 a `toy', and certainly all RISC

boxes and mainframes are toys by their standards. See also {Get

a real computer!}.

:toy language: /n./ A language useful for instructional

purposes or as a proof-of-concept for some aspect of

computer-science theory, but inadequate for general-purpose

programming. {Bad Thing}s can result when a toy language is

promoted as a general purpose solution for programming (see

{bondage-and-discipline language}); the classic example is

{{Pascal}}. Several moderately well-known formalisms for

conceptual tasks such as programming Turing machines also qualify

as toy languages in a less negative sense. See also {MFTL}.

:toy problem: /n./ [AI] A deliberately oversimplified case of a

challenging problem used to investigate, prototype, or test

algorithms for a real problem. Sometimes used pejoratively. See

also {gedanken}, {toy program}.

:toy program: /n./ 1. One that can be readily comprehended;

hence, a trivial program (compare {noddy}). 2. One for which

the effort of initial coding dominates the costs through its life

cycle. See also {noddy}.

:trampoline: /n./ An incredibly {hairy} technique, found in

some {HLL} and program-overlay implementations (e.g., on the

Macintosh), that involves on-the-fly generation of small executable

(and, likely as not, self-modifying) code objects to do indirection

between code sections. These pieces of {live data} are called

`trampolines'. Trampolines are notoriously difficult to

understand in action; in fact, it is said by those who use this

term that the trampoline that doesn't bend your brain is not the

true trampoline. See also {snap}.

:trap: 1. /n./ A program interrupt, usually an interrupt caused

by some exceptional situation in the user program. In most cases,

the OS performs some action, then returns control to the program.

2. /vi./ To cause a trap. "These instructions trap to the

monitor." Also used transitively to indicate the cause of the

trap. "The monitor traps all input/output instructions."

This term is associated with assembler programming (`interrupt'

or `exception' is more common among {HLL} programmers) and

appears to be fading into history among programmers as the role of

assembler continues to shrink. However, it is still important to

computer architects and systems hackers (see {system},

sense 1), who use it to distinguish deterministically repeatable

exceptions from timing-dependent ones (such as I/O interrupts).

:trap door: /n./ (alt. `trapdoor') 1. Syn. {back door}

-- a {Bad Thing}. 2. [techspeak] A `trap-door function' is

one which is easy to compute but very difficult to compute the

inverse of. Such functions are {Good Thing}s with important

applications in cryptography, specifically in the construction of

public-key cryptosystems.

:trash: /vt./ To destroy the contents of (said of a data

structure). The most common of the family of near-synonyms

including {mung}, {mangle}, and {scribble}.

:trawl: /v./ To sift through large volumes of data (e.g.,

Usenet postings, FTP archives, or the Jargon File) looking for

something of interest.

:tree-killer: /n./ [Sun] 1. A printer. 2. A person who wastes

paper. This epithet should be interpreted in a broad sense;

`wasting paper' includes the production of {spiffy} but

{content-free} documents. Thus, most {suit}s are

tree-killers. The negative loading of this term may reflect the

epithet `tree-killer' applied by Treebeard the Ent to the Orcs

in J.R.R. Tolkien's "Lord of the Rings" (see also

{elvish}, {elder days}).

:treeware: /tree'weir/ /n./ Printouts, books, and other

information media made from pulped dead trees. Compare

{tree-killer}, see {documentation}.

:trit: /trit/ /n./ [by analogy with `bit'] One base-3

digit; the amount of information conveyed by a selection among one

of three equally likely outcomes (see also {bit}). Trits arise,

for example, in the context of a {flag} that should actually be

able to assume *three* values -- such as yes, no, or unknown.

Trits are sometimes jokingly called `3-state bits'. A trit may

be semi-seriously referred to as `a bit and a half', although it

is linearly equivalent to 1.5849625 bits (that is,

log2(3)

bits).

:trivial: /adj./ 1. Too simple to bother detailing. 2. Not

worth the speaker's time. 3. Complex, but solvable by methods so

well known that anyone not utterly {cretinous} would have

thought of them already. 4. Any problem one has already solved

(some claim that hackish `trivial' usually evaluates to `I've

seen it before'). Hackers' notions of triviality may be quite at

variance with those of non-hackers. See {nontrivial},

{uninteresting}.

The physicist Richard Feynman, who had the hacker nature to an

amazing degree (see his essay "Los Alamos From Below" in

"Surely You're Joking, Mr. Feynman!"), defined `trivial

theorem' as "one that has already been proved".

:troff:: /T'rof/ or /trof/ /n./ [Unix] The gray

eminence of Unix text processing; a formatting and phototypesetting

program, written originally in PDP-11 assembler and then in

barely-structured early C by the late Joseph Ossanna, modeled after

the earlier ROFF which was in turn modeled after Multics' RUNOFF by

Jerome Saltzer (*that* name came from the expression "to run

off a copy"). A companion program, {nroff}, formats output for

terminals and line printers.

In 1979, Brian Kernighan modified troff so that it could drive

phototypesetters other than the Graphic Systems CAT. His paper

describing that work ("A Typesetter-independent troff," AT&T CSTR

#97) explains troff's durability. After discussing the program's

"obvious deficiencies -- a rebarbative input syntax, mysterious

and undocumented properties in some areas, and a voracious appetite

for computer resources" and noting the ugliness and extreme

hairiness of the code and internals, Kernighan concludes:

None of these remarks should be taken as denigrating Ossanna's

accomplishment with TROFF. It has proven a remarkably robust

tool, taking unbelievable abuse from a variety of preprocessors

and being forced into uses that were never conceived of in the

original design, all with considerable grace under fire.

The success of {{TeX}} and desktop publishing systems have

reduced `troff''s relative importance, but this tribute

perfectly captures the strengths that secured `troff' a place

in hacker folklore; indeed, it could be taken more generally as an

indication of those qualities of good programs that, in the long

run, hackers most admire.

:troglodyte: /n./ [Commodore] 1. A hacker who never leaves his

cubicle. The term `Gnoll' (from Dungeons & Dragons) is also

reported. 2. A curmudgeon attached to an obsolescent computing

environment. The combination `ITS troglodyte' was flung around

some during the Usenet and email wringle-wrangle attending the

2.x.x revision of the Jargon File; at least one of the people it

was intended to describe adopted it with pride.

:troglodyte mode: /n./ [Rice University] Programming with the

lights turned off, sunglasses on, and the terminal inverted (black

on white) because you've been up for so many days straight that

your eyes hurt (see {raster burn}). Loud music blaring from a

stereo stacked in the corner is optional but recommended. See

{larval stage}, {hack mode}.

:Trojan horse: /n./ [coined by MIT-hacker-turned-NSA-spook Dan

Edwards] A malicious, security-breaking program that is disguised

as something benign, such as a directory lister, archiver, game, or

(in one notorious 1990 case on the Mac) a program to find and

destroy viruses! See {back door}, {virus}, {worm},

{phage}, {mockingbird}.

:troll: /v.,n./ [From the Usenet group

alt.folklore.urban] To utter a posting on {Usenet}

designed to attract predictable responses or {flame}s. Derives

from the phrase "trolling for {newbie}s" which in turn comes

from mainstream "trolling", a style of fishing in which one

trails bait through a likely spot hoping for a bite. The

well-constructed troll is a post that induces lots of newbies and

flamers to make themselves look even more clueless than they

already do, while subtly conveying to the more savvy and

experienced that it is in fact a deliberate troll. If you don't

fall for the joke, you get to be in on it.

Some people claim that the troll is properly a narrower category

than {flame bait}, that a troll is categorized by containing

some assertion that is wrong but not overtly controversial.

:tron: /v./ [NRL, CMU; prob. fr. the movie "Tron"] To

become inaccessible except via email or `talk(1)', especially

when one is normally available via telephone or in person.

Frequently used in the past tense, as in: "Ran seems to have

tronned on us this week" or "Gee, Ran, glad you were able to

un-tron yourself". One may also speak of `tron mode'; compare

{spod}.

:true-hacker: /n./ [analogy with `trufan' from SF fandom] One

who exemplifies the primary values of hacker culture, esp.

competence and helpfulness to other hackers. A high compliment.

"He spent 6 hours helping me bring up UUCP and netnews on my

FOOBAR 4000 last week -- manifestly the act of a true-hacker."

Compare {demigod}, oppose {munchkin}.

:tty: /T-T-Y/, /tit'ee/ /n./ The latter pronunciation was

primarily ITS, but some Unix people say it this way as well; this

pronunciation is *not* considered to have sexual

undertones. 1. A terminal of the teletype variety, characterized by

a noisy mechanical printer, a very limited character set, and poor

print quality. Usage: antiquated (like the TTYs themselves). See

also {bit-paired keyboard}. 2. [especially Unix] Any terminal

at all; sometimes used to refer to the particular terminal

controlling a given job. 3. [Unix] Any serial port, whether or not

the device connected to it is a terminal; so called because under

Unix such devices have names of the form tty*. Ambiguity between

senses 2 and 3 is common but seldom bothersome.

:tube: 1. /n./ A CRT terminal. Never used in the mainstream

sense of TV; real hackers don't watch TV, except for Loony Toons,

Rocky & Bullwinkle, Trek Classic, the Simpsons, and the occasional

cheesy old swashbuckler movie. 2. [IBM] To send a copy of

something to someone else's terminal. "Tube me that

note?"

:tube time: /n./ Time spent at a terminal or console. More

inclusive than hacking time; commonly used in discussions of what

parts of one's environment one uses most heavily. "I find I'm

spending too much of my tube time reading mail since I started this

revision."

:tunafish: /n./ In hackish lore, refers to the mutated

punchline of an age-old joke to be found at the bottom of the

manual pages of `tunefs(8)' in the original {BSD} 4.2

distribution. The joke was removed in later releases once

commercial sites started using 4.2. Tunefs relates to the

`tuning' of file-system parameters for optimum performance, and

at the bottom of a few pages of wizardly inscriptions was a `BUGS'

section consisting of the line "You can tune a file system, but

you can't tunafish". Variants of this can be seen in other BSD

versions, though it has been excised from some versions by

humorless management {droid}s. The [nt]roff source for SunOS

4.1.1 contains a comment apparently designed to prevent this:

"Take this out and a Unix Demon will dog your steps from now until

the `time_t''s wrap around."

[It has since been pointed out that indeed you can tunafish.

Usually at a canning factory... --ESR]

:tune: /vt./ [from automotive or musical usage] To optimize a

program or system for a particular environment, esp. by adjusting

numerical parameters designed as {hook}s for tuning, e.g., by

changing `#define' lines in C. One may `tune for time'

(fastest execution), `tune for space' (least memory use), or

`tune for configuration' (most efficient use of hardware). See

{bum}, {hot spot}, {hand-hacking}.

:turbo nerd: /n./ See {computer geek}.

:Turing tar-pit: /n./ 1. A place where anything is possible but

nothing of interest is practical. Alan Turing helped lay the

foundations of computer science by showing that all machines and

languages capable of expressing a certain very primitive set of

operations are logically equivalent in the kinds of computations

they can carry out, and in principle have capabilities that differ

only in speed from those of the most powerful and elegantly

designed computers. However, no machine or language exactly

matching Turing's primitive set has ever been built (other than

possibly as a classroom exercise), because it would be horribly

slow and far too painful to use. A `Turing tar-pit' is any

computer language or other tool that shares this property. That

is, it's theoretically universal -- but in practice, the harder

you struggle to get any real work done, the deeper its inadequacies

suck you in. Compare {bondage-and-discipline language}. 2. The

perennial {holy wars} over whether language A or B is the "most

powerful".

:turist: /too'rist/ /n./ Var. sp. of {tourist}, q.v. Also

in adjectival form, `turistic'. Poss. influenced by {luser}

and `Turing'.

:tweak: /vt./ 1. To change slightly, usually in reference to a

value. Also used synonymously with {twiddle}. If a program is

almost correct, rather than figure out the precise problem you

might just keep tweaking it until it works. See {frobnicate}

and {fudge factor}; also see {shotgun debugging}. 2. To

{tune} or {bum} a program; preferred usage in the U.K.

:tweeter: /n./ [University of Waterloo] Syn. {perf},

{chad} (sense 1). This term (like {woofer}) has been in use

at Waterloo since 1972 but is elsewhere unknown. In audio jargon,

the word refers to the treble speaker(s) on a hi-fi.

:TWENEX:: /twe'neks/ /n./ The TOPS-20 operating system by DEC

-- the second proprietary OS for the PDP-10 -- preferred by most

PDP-10 hackers over TOPS-10 (that is, by those who were not

{{ITS}} or {{WAITS}} partisans). TOPS-20 began in 1969 as Bolt,

Beranek & Newman's TENEX operating system using special paging

hardware. By the early 1970s, almost all of the systems on the

ARPANET ran TENEX. DEC purchased the rights to TENEX from BBN and

began work to make it their own. The first in-house code name for

the operating system was VIROS (VIRtual memory Operating System);

when customers started asking questions, the name was changed to

SNARK so DEC could truthfully deny that there was any project

called VIROS. When the name SNARK became known, the name was

briefly reversed to become KRANS; this was quickly abandoned when

someone objected that `krans' meant `funeral wreath' in Swedish

(though some Swedish speakers have since said it means simply

`wreath'; this part of the story may be apocryphal). Ultimately

DEC picked TOPS-20 as the name of the operating system, and it was

as TOPS-20 that it was marketed. The hacker community, mindful of

its origins, quickly dubbed it TWENEX (a contraction of `twenty

TENEX'), even though by this point very little of the original

TENEX code remained (analogously to the differences between AT&T V6

Unix and BSD). DEC people cringed when they heard "TWENEX", but

the term caught on nevertheless (the written abbreviation `20x'

was also used). TWENEX was successful and very popular; in fact,

there was a period in the early 1980s when it commanded as fervent

a culture of partisans as Unix or ITS -- but DEC's decision to

scrap all the internal rivals to the VAX architecture and its

relatively stodgy VMS OS killed the DEC-20 and put a sad end to

TWENEX's brief day in the sun. DEC attempted to convince TOPS-20

users to convert to {VMS}, but instead, by the late 1980s, most

of the TOPS-20 hackers had migrated to Unix.

:twiddle: /n./ 1. Tilde (ASCII 1111110, `~'). Also called

`squiggle', `sqiggle' (sic -- pronounced /skig'l/), and

`twaddle', but twiddle is the most common term. 2. A small and

insignificant change to a program. Usually fixes one bug and

generates several new ones (see also {shotgun debugging}).

3. /vt./ To change something in a small way. Bits, for example,

are

often twiddled. Twiddling a switch or knob implies much less sense

of purpose than toggling or tweaking it; see {frobnicate}. To

speak of twiddling a bit connotes aimlessness, and at best doesn't

specify what you're doing to the bit; `toggling a bit' has a more

specific meaning (see {bit twiddling}, {toggle}).

:twilight zone: /n./ [IRC] Notionally, the area of

cyberspace where {IRC} operators live. An {op} is said to

have a "connection to the twilight zone".

:twink: /twink/ /n./ [UCSC] Equivalent to {read-only

user}. Also reported on the Usenet group soc.motss; may derive

from gay slang for a cute young thing with nothing upstairs

(compare mainstream `chick').

:twirling baton: /n./ [PLATO] The overstrike sequence -/|\-/|\-

which produces an animated twirling baton. If you output it with a

single backspace between characters, the baton spins in place. If

you output the sequence BS SP between characters, the baton spins

from left to right. If you output BS SP BS BS between characters,

the baton spins from right to left.

The twirling baton was a popular component of animated signature

files on the pioneering PLATO educational timesharing system. The

`archie' Internet service is perhaps the best-known baton

program today; it uses the twirling baton as an idler indicating

that the program is working on a query.

:two pi: /quant./ The number of years it takes to finish one's

thesis. Occurs in stories in the following form: "He started on

his thesis; 2 pi years later..."

:two-to-the-N: /quant./ An amount much larger than {N} but

smaller than {infinity}. "I have 2-to-the-N things to

do before I can go out for lunch" means you probably won't show

up.

:twonkie: /twon'kee/ /n./ The software equivalent of a

Twinkie (a variety of sugar-loaded junk food, or (in gay slang with

a small t) the male equivalent of `chick'); a useless

`feature' added to look sexy and placate a {marketroid}

(compare {Saturday-night special}). The term may also be

related to "The Twonky", title menace of a classic SF short

story by Lewis Padgett (Henry Kuttner and C. L. Moore), first

published in the September 1942 "Astounding Science Fiction"

and subsequently much anthologized.

= U =

=====

:u-: /pref./ Written shorthand for {micro-}; techspeak when

applied to metric units, jargon when used otherwise. Derived from

the Greek letter "mu", the first letter of "micro" (and which

letter looks a lot like the English letter "u").

:UBD: /U-B-D/ /n./ [abbreviation for `User Brain Damage']

An abbreviation used to close out trouble reports obviously due to

utter cluelessness on the user's part. Compare {pilot error};

oppose {PBD}; see also {brain-damaged}.

:UN*X: /n./ Used to refer to the Unix operating system (a

trademark of AT&T) in writing, but avoiding the need for the ugly

{(TM)} typography.

Also used to refer to any or all varieties of Unixoid operating

systems. Ironically, lawyers now say that the requirement for the

TM-postfix has no legal force, but the asterisk usage is

entrenched anyhow. It has been suggested that there may be a

psychological connection to practice in certain religions

(especially Judaism) in which the name of the deity is never

written out in full, e.g., `YHWH' or `G--d' is used. See also

{glob}.

:undefined external reference: /excl./ [Unix] A message from

Unix's linker. Used in speech to flag loose ends or dangling

references in an argument or discussion.

:under the hood: /adj./ [hot-rodder talk] 1. Used to introduce the

underlying implementation of a product (hardware, software, or

idea). Implies that the implementation is not intuitively obvious

from the appearance, but the speaker is about to enable the

listener to {grok} it. "Let's now look under the hood to see

how ...." 2. Can also imply that the implementation is much

simpler than the appearance would indicate: "Under the hood, we

are just fork/execing the shell." 3. Inside a chassis, as in

"Under the hood, this baby has a 40MHz 68030!"

:undocumented feature: /n./ See {feature}.

:uninteresting: /adj./ 1. Said of a problem that, although

{nontrivial}, can be solved simply by throwing sufficient

resources at it. 2. Also said of problems for which a solution

would neither advance the state of the art nor be fun to design and

code.

Hackers regard uninteresting problems as intolerable wastes of

time, to be solved (if at all) by lesser mortals. *Real*

hackers (see {toolsmith}) generalize uninteresting problems

enough to make them interesting and solve them -- thus solving the

original problem as a special case (and, it must be admitted,

occasionally turning a molehill into a mountain, or a mountain into

a tectonic plate). See {WOMBAT}, {SMOP}; compare {toy

problem}, oppose {interesting}.

:Unix:: /yoo'niks/ /n./ [In the authors' words, "A weak pun

on Multics"; very early on it was `UNICS'] (also `UNIX') An

interactive time-sharing system invented in 1969 by Ken Thompson

after Bell Labs left the Multics project, originally so he could

play games on his scavenged PDP-7. Dennis Ritchie, the inventor of

C, is considered a co-author of the system. The turning point in

Unix's history came when it was reimplemented almost entirely in C

during 1972--1974, making it the first source-portable OS. Unix

subsequently underwent mutations and expansions at the hands of

many different people, resulting in a uniquely flexible and

developer-friendly environment. By 1991, Unix had become the most

widely used multiuser general-purpose operating system in the

world. Many people consider this the most important victory yet of

hackerdom over industry opposition (but see {Unix weenie} and

{Unix conspiracy} for an opposing point of view). See

{Version 7}, {BSD}, {USG Unix}, {Linux}.

Some people are confused over whether this word is appropriately

`UNIX' or `Unix'; both forms are common, and used interchangeably.

Dennis Ritchie says that the `UNIX' spelling originally happened in

CACM's 1974 paper "The UNIX Time-Sharing System" because "we

had a new typesetter and {troff} had just been invented and we

were intoxicated by being able to produce small caps." Later, dmr

tried to get the spelling changed to `Unix' in a couple of Bell

Labs papers, on the grounds that the word is not acronymic. He

failed, and eventually (his words) "wimped out" on the issue.

So, while the trademark today is `UNIX', both capitalizations are

grounded in ancient usage; the Jargon File uses `Unix' in deference

to dmr's wishes.

:Unix brain damage: /n./ Something that has to be done to break

a network program (typically a mailer) on a non-Unix system so that

it will interoperate with Unix systems. The hack may qualify as

`Unix brain damage' if the program conforms to published

standards and the Unix program in question does not. Unix brain

damage happens because it is much easier for other (minority)

systems to change their ways to match non-conforming behavior than

it is to change all the hundreds of thousands of Unix systems out

there.

An example of Unix brain damage is a {kluge} in a mail server to

recognize bare line feed (the Unix newline) as an equivalent form

to the Internet standard newline, which is a carriage return

followed by a line feed. Such things can make even a hardened

{jock} weep.

:Unix conspiracy: /n./ [ITS] According to a conspiracy theory

long popular among {{ITS}} and {{TOPS-20}} fans, Unix's growth is

the result of a plot, hatched during the 1970s at Bell Labs, whose

intent was to hobble AT&T's competitors by making them dependent

upon a system whose future evolution was to be under AT&T's

control. This would be accomplished by disseminating an operating

system that is apparently inexpensive and easily portable, but also

relatively unreliable and insecure (so as to require continuing

upgrades from AT&T). This theory was lent a substantial impetus in

1984 by the paper referenced in the {back door} entry.

In this view, Unix was designed to be one of the first computer

viruses (see {virus}) -- but a virus spread to computers

indirectly by people and market forces, rather than directly

through disks and networks. Adherents of this `Unix virus' theory

like to cite the fact that the well-known quotation "Unix is snake

oil" was uttered by DEC president Kenneth Olsen shortly before DEC

began actively promoting its own family of Unix workstations.

(Olsen now claims to have been misquoted.)

[If there was ever such a conspiracy, it got thoroughly out of the

plotters' control after 1990. AT&T sold its UNIX operation to

Novell around the same time {Linux} and other free-UNIX

distributions were beginning to make noise. --ESR]

:Unix weenie: /n./ [ITS] 1. A derogatory play on `Unix wizard',

common among hackers who use Unix by necessity but would prefer

alternatives. The implication is that although the person in

question may consider mastery of Unix arcana to be a wizardly

skill, the only real skill involved is the ability to tolerate (and

the bad taste to wallow in) the incoherence and needless complexity

that is alleged to infest many Unix programs. "This shell script

tries to parse its arguments in 69 bletcherous ways. It must have

been written by a real Unix weenie." 2. A derogatory term for

anyone who engages in uncritical praise of Unix. Often appearing

in the context "stupid Unix weenie". See {Weenix}, {Unix

conspiracy}. See also {weenie}.

:unixism: /n./ A piece of code or a coding technique that

depends on the protected multi-tasking environment with relatively

low process-spawn overhead that exists on virtual-memory Unix

systems. Common {unixism}s include: gratuitous use of

`fork(2)'; the assumption that certain undocumented but

well-known features of Unix libraries such as `stdio(3)' are

supported elsewhere; reliance on {obscure} side-effects of

system calls (use of `sleep(2)' with a 0 argument to clue the

scheduler that you're willing to give up your time-slice, for

example); the assumption that freshly allocated memory is zeroed;

and the assumption that fragmentation problems won't arise from

never `free()'ing memory. Compare {vaxocentrism}; see also

{New Jersey}.

:unswizzle: /v./ See {swizzle}.

:unwind the stack: /vi./ 1. [techspeak] During the execution of

a procedural language, one is said to `unwind the stack' from a

called procedure up to a caller when one discards the stack frame

and any number of frames above it, popping back up to the level of

the given caller. In C this is done with

`longjmp'/`setjmp', in LISP with `throw/catch'.

See also {smash the stack}. 2. People can unwind the stack as

well, by quickly dealing with a bunch of problems: "Oh heck, let's

do lunch. Just a second while I unwind my stack."

:unwind-protect: /n./ [MIT: from the name of a LISP operator] A

task you must remember to perform before you leave a place or

finish a project. "I have an unwind-protect to call my advisor."

:up: /adj./ 1. Working, in order. "The down escalator is

up." Oppose {down}. 2. `bring up': /vt./ To create a working

version and start it. "They brought up a down system."

3. `come up' /vi./ To become ready for production use.

:upload: /uhp'lohd/ /v./ 1. [techspeak] To transfer programs

or data over a digital communications link from a smaller or

peripheral `client' system to a larger or central `host' one.

A transfer in the other direction is, of course, called a

{download} (but see the note about ground-to-space comm under

that entry). 2. [speculatively] To move the essential patterns and

algorithms that make up one's mind from one's brain into a

computer. Those who are convinced that such patterns and

algorithms capture the complete essence of the self view this

prospect with pleasant anticipation.

:upthread: /adv./ Earlier in the discussion (see {thread}),

i.e., `above'. "As Joe pointed out upthread, ..." See

also {followup}.

:urchin: /n./ See {munchkin}.

:URL: /U-R-L/ or /erl/ /n./ Uniform Resource Locator, an

address widget that identifies a document or resource on the

World Wide Web. This entry is here primarily to record the fact

that the term is commonly pronounced both /erl/, and /U-R-L/

(the latter predominates in more formal contexts).

:Usenet: /yoos'net/ or /yooz'net/ /n./ [from `Users'

Network'; the original spelling was USENET, but the mixed-case form

is now widely preferred] A distributed {bboard} (bulletin board)

system supported mainly by Unix machines. Originally implemented

in 1979--1980 by Steve Bellovin, Jim Ellis, Tom Truscott, and Steve

Daniel at Duke University, it has swiftly grown to become

international in scope and is now probably the largest

decentralized information utility in existence. As of early 1996,

it hosts over 10,000 {newsgroup}s and an average of over 500

megabytes (the equivalent of several thousand paper pages) of new

technical articles, news, discussion, chatter, and {flamage}

every day.

By the year the Internet hit the mainstream (1994) the original

UUCP transport for Usenet was fading out of use (see {UUCPNET})

-- almost all Usenet connections were over Internet links. A lot

of newbies and journalists began to refer to "Internet

newsgroups" as though Usenet was and always had been just another

Internet service. This ignorance greatly annoys experienced

Usenetters.

:user: /n./ 1. Someone doing `real work' with the computer,

using it as a means rather than an end. Someone who pays to use a

computer. See {real user}. 2. A programmer who will believe

anything you tell him. One who asks silly questions. [GLS

observes: This is slightly unfair. It is true that users ask

questions (of necessity). Sometimes they are thoughtful or deep.

Very often they are annoying or downright stupid, apparently

because the user failed to think for two seconds or look in the

documentation before bothering the maintainer.] See {luser}.

3. Someone who uses a program from the outside, however skillfully,

without getting into the internals of the program. One who reports

bugs instead of just going ahead and fixing them.

The general theory behind this term is that there are two classes

of people who work with a program: there are implementors (hackers)

and {luser}s. The users are looked down on by hackers to some

extent because they don't understand the full ramifications of the

system in all its glory. (The few users who do are known as

`real winners'.) The term is a relative one: a skilled hacker

may be a user with respect to some program he himself does not

hack. A LISP hacker might be one who maintains LISP or one who

uses LISP (but with the skill of a hacker). A LISP user is one who

uses LISP, whether skillfully or not. Thus there is some overlap

between the two terms; the subtle distinctions must be resolved by

context.

:user-friendly: /adj./ Programmer-hostile. Generally used by

hackers in a critical tone, to describe systems that hold the

user's hand so obsessively that they make it painful for the more

experienced and knowledgeable to get any work done. See

{menuitis}, {drool-proof paper}, {Macintrash},

{user-obsequious}.

:user-obsequious: /adj./ Emphatic form of {user-friendly}.

Connotes a system so verbose, inflexible, and determinedly

simple-minded that it is nearly unusable. "Design a system any

fool can use and only a fool will want to use it." See {WIMP

environment}, {Macintrash}.

:USG Unix: /U-S-G yoo'niks/ /n./ Refers to AT&T Unix

commercial versions after {Version 7}, especially System III and

System V releases 1, 2, and 3. So called because during most of

the lifespan of those versions AT&T's support crew was called the

`Unix Support Group'. See {BSD}, {{Unix}}.

:UTSL: // /n./ [Unix] On-line acronym for `Use the Source, Luke' (a

pun on Obi-Wan Kenobi's "Use the Force, Luke!" in "Star

Wars") -- analogous to {RTFS} (sense 1), but more polite. This

is a common way of suggesting that someone would be better off

reading the source code that supports whatever feature is causing

confusion, rather than making yet another futile pass through the

manuals, or broadcasting questions on Usenet that haven't attracted

{wizard}s to answer them.

Once upon a time in {elder days}, everyone running Unix had

source. After 1978, AT&T's policy tightened up, so this

objurgation was in theory appropriately directed only at associates

of some outfit with a Unix source license. In practice, bootlegs

of Unix source code (made precisely for reference purposes) were so

ubiquitous that one could utter it at almost anyone on the network

without concern.

Nowadays, free Unix clones have become widely enough distributed

that anyone can read source legally. The most widely distributed

is certainly Linux, with variants of the NET/2 and 4.4BSD

distributions running second. Cheap commercial Unixes with source

such as BSD/OS are accelerating this trend.

:UUCPNET: /n. obs./ The store-and-forward network consisting of all

the world's connected Unix machines (and others running some clone

of the UUCP (Unix-to-Unix CoPy) software). Any machine reachable

only via a {bang path} is on UUCPNET. This term has been

rendered obsolescent by the spread of cheap Internet connections in

the 1990s; the few remaining UUCP links are essentially slow

channels to the Internet rather than an autonomous network. See

{network address}.

= V =

=====

:V7: /V'sev'en/ /n./ See {Version 7}.

:vadding: /vad'ing/ /n./ [from VAD, a permutation of ADV

(i.e., {ADVENT}), used to avoid a particular {admin}'s

continual search-and-destroy sweeps for the game] A leisure-time

activity of certain hackers involving the covert exploration of the

`secret' parts of large buildings -- basements, roofs, freight

elevators, maintenance crawlways, steam tunnels, and the like. A

few go so far as to learn locksmithing in order to synthesize

vadding keys. The verb is `to vad' (compare {phreaking}; see

also {hack}, sense 9). This term dates from the late 1970s,

before which such activity was simply called `hacking'; the older

usage is still prevalent at MIT.

The most extreme and dangerous form of vadding is `elevator

rodeo', a.k.a. `elevator surfing', a sport played by wrasslin'

down a thousand-pound elevator car with a 3-foot piece of

string, and then exploiting this mastery in various stimulating

ways (such as elevator hopping, shaft exploration, rat-racing, and

the ever-popular drop experiments). Kids, don't try this at home!

See also {hobbit} (sense 2).

:vanilla: /adj./ [from the default flavor of ice cream in the

U.S.] Ordinary {flavor}, standard. When used of food, very

often does not mean that the food is flavored with vanilla extract!

For example, `vanilla wonton soup' means ordinary wonton soup, as

opposed to hot-and-sour wonton soup. Applied to hardware and

software, as in "Vanilla Version 7 Unix can't run on a vanilla

11/34." Also used to orthogonalize chip nomenclature; for

instance, a 74V00 means what TI calls a 7400, as distinct from a

74LS00, etc. This word differs from {canonical} in that the

latter means `default', whereas vanilla simply means

`ordinary'. For example, when hackers go on a {great-wall},

hot-and-sour soup is the {canonical} soup to get (because that

is what most of them usually order) even though it isn't the

vanilla (wonton) soup.

:vannevar: /van'*-var/ /n./ A bogus technological prediction

or a foredoomed engineering concept, esp. one that fails by

implicitly assuming that technologies develop linearly,

incrementally, and in isolation from one another when in fact the

learning curve tends to be highly nonlinear, revolutions are

common, and competition is the rule. The prototype was Vannevar

Bush's prediction of `electronic brains' the size of the Empire

State Building with a Niagara-Falls-equivalent cooling system for

their tubes and relays, a prediction made at a time when the

semiconductor effect had already been demonstrated. Other famous

vannevars have included magnetic-bubble memory, LISP machines,

{videotex}, and a paper from the late 1970s that computed a

purported ultimate limit on areal density for ICs that was in fact

less than the routine densities of 5 years later.

:vaporware: /vay'pr-weir/ /n./ Products announced far in

advance of any release (which may or may not actually take place).

See also {brochureware}.

:var: /veir/ or /var/ /n./ Short for `variable'.

Compare {arg}, {param}.

:VAX: /vaks/ /n./ 1. [from Virtual Address eXtension] The

most successful minicomputer design in industry history, possibly

excepting its immediate ancestor, the PDP-11. Between its release

in 1978 and its eclipse by {killer micro}s after about 1986, the

VAX was probably the hacker's favorite machine of them all, esp.

after the 1982 release of 4.2 BSD Unix (see {BSD}). Esp.

noted for its large, assembler-programmer-friendly instruction set

-- an asset that became a liability after the RISC revolution.

2. A major brand of vacuum cleaner in Britain. Cited here because

its sales pitch, "Nothing sucks like a VAX!" became a sort of

battle-cry of RISC partisans. It is even sometimes claimed that

DEC actually entered a cross-licensing deal with the vacuum-Vax

people that allowed them to market VAX computers in the U.K. in

return for not challenging the vacuum cleaner trademark in the

U.S.

A rival brand actually pioneered the slogan: its original form was

"Nothing sucks like Electrolux". It has apparently become a

classic

example (used in advertising textbooks) of the perils of not

knowing

the local idiom. But in 1996, the press manager of Electrolux AB,

while confirming that the company used this slogan in the late

1960s,

also tells us that their marketing people were fully aware of the

possible double entendre and intended it to gain attention.

And gain attention it did -- the VAX-vacuum-cleaner people thought

the slogan a sufficiently good idea to copy it. Several British

hackers report that VAX's promotions used it in 1986--1987, and we

have one report from a New Zealander that the infamous slogan

surfaced there in TV ads for the product in 1992.

:VAXectomy: /vak-sek't*-mee/ /n./ [by analogy with

`vasectomy'] A VAX removal. DEC's Microvaxen, especially, are

much slower than newer RISC-based workstations such as the SPARC.

Thus, if one knows one has a replacement coming, VAX removal can be

cause for celebration.

:VAXen: /vak'sn/ /n./ [from `oxen', perhaps influenced by

`vixen'] (alt. `vaxen') The plural canonically used among

hackers for the DEC VAX computers. "Our installation has four

PDP-10s and twenty vaxen." See {boxen}.

:vaxherd: /vaks'herd/ /n. obs./ [from `oxherd'] A VAX

operator. The image is reinforced because VAXen actually did tend

to come in herds, technically known as `clusters'.

:vaxism: /vak'sizm/ /n./ A piece of code that exhibits

{vaxocentrism} in critical areas. Compare {PC-ism},

{unixism}.

:vaxocentrism: /vak`soh-sen'trizm/ /n./ [analogy with

`ethnocentrism'] A notional disease said to afflict C programmers

who persist in coding according to certain assumptions that are

valid (esp. under Unix) on {VAXen} but false elsewhere. Among

these are:

1. The assumption that dereferencing a null pointer is safe because

it is all bits 0, and location 0 is readable and 0. Problem:

this may instead cause an illegal-address trap on non-VAXen, and

even on VAXen under OSes other than BSD Unix. Usually this is an

implicit assumption of sloppy code (forgetting to check the

pointer before using it), rather than deliberate exploitation of

a misfeature.

The Jargon File, Version 4.0.0, 24 Jul 1996 · 第 11 / 18 题