The Jargon File by Eric S. Raymond (ebook reader android txt) π
The AI Lab culture had been hit hard in the late 1970s by funding cuts and the resulting administrative decision to use vendor-supported hardware and software instead of homebrew whenever possible. At MIT, most AI work had turned to dedicated LISP Machines. At the same time, the commercialization of AI technology lured some of the AI Lab's best and brightest away to startups along the Route 128 strip in Massachusetts and out West in Silicon Valley. The startups built LISP machines for MIT; the central MIT-AI computer became a [45]TWENEX system rather than a host for the AI hackers' beloved [46]ITS.
The Stanford AI Lab had effectively ceased to exist by 1980, although the SAIL computer continued as a Computer Science Department resource until 1991. Stanford became a major [47]TWENEX site, at one point operating more than a dozen TOPS-20 systems; but by the mid-1980s most of the interesting software work was being
Read free book Β«The Jargon File by Eric S. Raymond (ebook reader android txt) πΒ» - read online or download for free at americanlibrarybooks.com
- Author: Eric S. Raymond
- Performer: -
Read book online Β«The Jargon File by Eric S. Raymond (ebook reader android txt) πΒ». Author - Eric S. Raymond
hacker may claim with a straight face that `according to religious
law' is not the canonical meaning of `canonical'.
Node:card walloper, Next:[2450]careware, Previous:[2451]canonical,
Up:[2452]= C =
card walloper n.
An EDP programmer who grinds out batch programs that do stupid things
like print people's paychecks. Compare [2453]code grinder. See also
[2454]punched card, [2455]eighty-column mind.
Node:careware, Next:[2456]cargo cult programming, Previous:[2457]card
walloper, Up:[2458]= C =
careware /keir'weir/ n.
A variety of [2459]shareware for which either the author suggests that
some payment be made to a nominated charity or a levy directed to
charity is included on top of the distribution charge. Syn.
[2460]charityware; compare [2461]crippleware, sense 2.
Node:cargo cult programming, Next:[2462]cascade,
Previous:[2463]careware, Up:[2464]= C =
cargo cult programming n.
A style of (incompetent) programming dominated by ritual inclusion of
code or program structures that serve no real purpose. A cargo cult
programmer will usually explain the extra code as a way of working
around some bug encountered in the past, but usually neither the bug
nor the reason the code apparently avoided the bug was ever fully
understood (compare [2465]shotgun debugging, [2466]voodoo
programming).
The term `cargo cult' is a reference to aboriginal religions that grew
up in the South Pacific after World War II. The practices of these
cults center on building elaborate mockups of airplanes and military
style landing strips in the hope of bringing the return of the
god-like airplanes that brought such marvelous cargo during the war.
Hackish usage probably derives from Richard Feynman's characterization
of certain practices as "cargo cult science" in his book "Surely
You're Joking, Mr. Feynman!" (W. W. Norton & Co, New York 1985, ISBN
0-393-01921-7).
Node:cascade, Next:[2467]case and paste, Previous:[2468]cargo cult
programming, Up:[2469]= C =
cascade n.
A huge volume of spurious error-message output produced by acompiler with poor error recovery. Too frequently, one trivial syntax
error (such as a missing )' or}') throws the parser out of synch so
that much of the remaining program text is interpreted as garbaged or
ill-formed. 2. A chain of Usenet followups, each adding some trivial
variation or riposte to the text of the previous one, all of which is
reproduced in the new message; an [2470]include war in which the
object is to create a sort of communal graffito.
Node:case and paste, Next:[2471]casters-up mode,
Previous:[2472]cascade, Up:[2473]= C =
case and paste n.
[from `cut and paste'] 1. The addition of a new [2474]feature to an
existing system by selecting the code from an existing feature and
pasting it in with minor changes. Common in telephony circles because
most operations in a telephone switch are selected using case
statements. Leads to [2475]software bloat.
In some circles of EMACS users this is called `programming by Meta-W',
because Meta-W is the EMACS command for copying a block of text to a
kill buffer in preparation to pasting it in elsewhere. The term is
condescending, implying that the programmer is acting mindlessly
rather than thinking carefully about what is required to integrate the
code for two similar cases.
At [2476]DEC (now Compaq), this is sometimes called `clone-and-hack'
coding.
Node:casters-up mode, Next:[2477]casting the runes,
Previous:[2478]case and paste, Up:[2479]= C =
casters-up mode n.
[IBM, prob. fr. slang belly up] Yet another synonym for `broken' or
`down'. Usually connotes a major failure. A system (hardware or
software) which is `down' may be already being restarted before the
failure is noticed, whereas one which is `casters up' is usually a
good excuse to take the rest of the day off (as long as you're not
responsible for fixing it).
Node:casting the runes, Next:[2480]cat, Previous:[2481]casters-up
mode, Up:[2482]= C =
casting the runes n.
What a [2483]guru does when you ask him or her to run a particular
program and type at it because it never works for anyone else; esp.
used when nobody can ever see what the guru is doing different from
what J. Random Luser does. Compare [2484]incantation, [2485]runes,
[2486]examining the entrails; also see the AI koan about Tom Knight in
"[2487]Some AI Koans" (Appendix A).
A correspondent from England tells us that one of ICL's most talented
systems designers used to be called out occasionally to service
machines which the [2488]field circus had given up on. Since he knew
the design inside out, he could often find faults simply by listening
to a quick outline of the symptoms. He used to play on this by going
to some site where the field circus had just spent the last two weeks
solid trying to find a fault, and spreading a diagram of the system
out on a table top. He'd then shake some chicken bones and cast them
over the diagram, peer at the bones intently for a minute, and then
tell them that a certain module needed replacing. The system would
start working again immediately upon the replacement.
Node:cat, Next:[2489]catatonic, Previous:[2490]casting the runes,
Up:[2491]= C =
cat [from `catenate' via [2492]Unix cat(1)] vt.
[techspeak] To spew an entire file to the screen or some otheroutput sink without pause (syn. [2493]blast). 2. By extension, to dump
large amounts of data at an unprepared target or with no intention of
browsing it carefully. Usage: considered silly. Rare outside Unix
sites. See also [2494]dd, [2495]BLT.
Among Unix fans, cat(1) is considered an excellent example of
user-interface design, because it delivers the file contents without
such verbosity as spacing or headers between the files, and because it
does not require the files to consist of lines of text, but works with
any sort of data.
Among Unix haters, cat(1) is considered the [2496]canonical example of
bad user-interface design, because of its woefully unobvious name. It
is far more often used to [2497]blast a file to standard output than
to concatenate two files. The name cat for the former operation is
just as unintuitive as, say, LISP's [2498]cdr.
Of such oppositions are [2499]holy wars made....
Node:catatonic, Next:[2500]cathedral, Previous:[2501]cat, Up:[2502]= C
=
catatonic adj.
Describes a condition of suspended animation in which something is so
[2503]wedged or [2504]hung that it makes no response. If you are
typing on a terminal and suddenly the computer doesn't even echo the
letters back to the screen as you type, let alone do what you're
asking it to do, then the computer is suffering from catatonia
(possibly because it has crashed). "There I was in the middle of a
winning game of [2505]nethack and it went catatonic on me! Aaargh!"
Compare [2506]buzz.
Node:cathedral, Next:[2507]cd tilde, Previous:[2508]catatonic,
Up:[2509]= C =
cathedral n.,adj.
[see [2510]bazaar for derivation] The `classical' mode of software
engineering long thought to be necessarily implied by [2511]Brooks's
Law. Features small teams, tight project control, and long release
intervals. This term came into use after analysis of the Linux
experience suggested there might be something wrong (or at least
incomplete) in the classical assumptions.
Node:cd tilde, Next:[2512]CDA, Previous:[2513]cathedral, Up:[2514]= C
=
cd tilde /C-D til-d*/ vi.
To go home. From the Unix C-shell and Korn-shell command cd ~, which
takes one to one's $HOME (cd with no arguments happens to do the same
thing). By extension, may be used with other arguments; thus, over an
electronic chat link, cd ~coffee would mean "I'm going to the coffee
machine."
Node:CDA, Next:[2515]cdr, Previous:[2516]cd tilde, Up:[2517]= C =
CDA /C-D-A/
The "Communications Decency Act" of 1996, passed on [2518]Black
Thursday as section 502 of a major telecommunications reform bill. The
CDA made it a federal crime in the USA to send a communication which
is "obscene, lewd, lascivious, filthy, or indecent, with intent to
annoy, abuse, threaten, or harass another person." It also threatened
with imprisonment anyone who "knowingly" makes accessible to minors
any message that "describes, in terms patently offensive as measured
by contemporary community standards, sexual or excretory activities or
organs".
While the CDA was sold as a measure to protect minors from the
putative evils of pornography, the repressive political aims of the
bill were laid bare by the Hyde amendment, which intended to outlaw
discussion of abortion on the Internet.
To say that this direct attack on First Amendment free-speech rights
was not well received on the Internet would be putting it mildly. A
firestorm of protest followed, including a February 29th mass
demonstration by thousands of netters who turned their [2519]home
pages black for 48 hours. Several civil-rights groups and
computing/telecommunications companies mounted a constitutional
challenge. The CDA was demolished by a strongly-worded decision handed
down on in 8th-circuit Federal court and subsequently affirmed by the
U.S. Supreme Court on 26 June 1997 (`White Thursday'). See also
[2520]Exon.
Node:cdr, Next:[2521]chad, Previous:[2522]CDA, Up:[2523]= C =
cdr /ku'dr/ or /kuh'dr/ vt.
[from LISP] To skip past the first item from a list of things
(generalized from the LISP operation on binary tree structures, which
returns a list consisting of all but the first element of its
argument). In the form `cdr down', to trace down a list of elements:
"Shall we cdr down the agenda?" Usage: silly. See also [2524]loop
through.
Historical note: The instruction format of the IBM 704 that hosted the
original LISP implementation featured two 15-bit fields called the
address' anddecrement' parts. The term `cdr' was originally
Contents of Decrement part of Register'. Similarly,car' stood for
`Contents of Address part of Register'.
The cdr and car operations have since become bases for formation of
compound metaphors in non-LISP contexts. GLS recalls, for example, a
programming project in which strings were represented as linked lists;
the get-character and skip-character operations were of course called
CHAR and CHDR.
Node:chad, Next:[2525]chad box, Previous:[2526]cdr, Up:[2527]= C =
chad /chad/ n.
[common] The perforated edge strips on printer paper, after theyhave been separated from the printed portion. Also called
[2528]selvage, [2529]perf, and [2530]ripoff. 2. obs. The confetti-like
paper bits punched out of cards or paper tape; this has also been
called chaff',computer confetti', and `keypunch droppings'. It's
reported that this was very old Army slang, and it may now be
mainstream; it has been reported seen (1993) in directions for a
card-based voting machine in California.
Historical note: One correspondent believes `chad' (sense 2) derives
from the Chadless keypunch (named for its inventor), which cut little
u-shaped tabs in the card to make a hole when the tab folded back,
rather than punching out a circle/rectangle; it was clear that if the
Chadless keypunch didn't make them, then the stuff that other
keypunches made had to be `chad'. There is a legend that the word was
originally acronymic, standing for "Card Hole Aggregate Debris", but
this has all the earmarks of a [2531]backronym.
Node:chad box, Next:[2532]chain, Previous:[2533]chad, Up:[2534]= C =
chad box n.
A metal box about the size of a lunchbox (or in some models a large
wastebasket), for collecting the [2535]chad (sense 2) that accumulated
in [2536]Iron Age card punches. You had to open the covers of the card
punch periodically and empty the chad box. The [2537]bit bucket was
notionally the equivalent device in the CPU enclosure, which was
typically across the room in another great gray-and-blue box.
Node:chain, Next:[2538]channel, Previous:[2539]chad box, Up:[2540]= C
=
chain
vi. [orig. from BASIC's CHAIN statement] To hand off execution to achild or successor without going through the [2541]OS command
interpreter that invoked it. The state of the parent program is lost
and there is no returning to it. Though this facility used to be
common on memory-limited micros and is still widely supported for
backward compatibility, the jargon usage is semi-obsolescent; in
particular, most Unix programmers will think of this as an [2542]exec.
Oppose the more modern `subshell'. 2. n. A series of linked data areas
within an operating system or application. `Chain rattling' is the
process of repeatedly running through the linked data areas searching
for one which is of interest to the executing program. The implication
is that there is a very large number of links on the chain.
Node:channel, Next:[2543]channel
Comments (0)