The New Hacker's Dictionary - Eric S. Raymond (e book reader online txt) 📗
- Author: Eric S. Raymond
- Performer: 0262680920
Book online «The New Hacker's Dictionary - Eric S. Raymond (e book reader online txt) 📗». Author Eric S. Raymond
has a reserved keystroke for switching to the default set of
keybindings and behavior. This keystroke is (believe it or not)
`control-meta-bang' (see [2788]bang). Since the exclamation point
looks a lot like an upside down Coke bottle, Motif hackers have begun
referring to this keystroke as `cokebottle'. See also [2789]quadruple
bucky.
Node:cold boot, Next:[2790]COME FROM, Previous:[2791]cokebottle,
Up:[2792]= C =
cold boot n.
See [2793]boot.
Node:COME FROM, Next:[2794]comm mode, Previous:[2795]cold boot,
Up:[2796]= C =
COME FROM n.
A semi-mythical language construct dual to the `go to'; COME FROM
would cause the referenced label to act as a sort of trapdoor,
so that if the program ever reached it control would quietly and
[2797]automagically be transferred to the statement following the COME
FROM. COME FROM was first proposed in R. Lawrence Clark's "A
Linguistic Contribution to GOTO-less programming", which appeared in a
1973 [2798]Datamation issue (and was reprinted in the April 1984 issue
of "Communications of the ACM"). This parodied the then-raging
`structured programming' [2799]holy wars (see [2800]considered
harmful). Mythically, some variants are the `assigned COME FROM' and
the `computed COME FROM' (parodying some nasty control constructs in
FORTRAN and some extended BASICs). Of course, multi-tasking (or
non-determinism) could be implemented by having more than one COME
FROM statement coming from the same label.
In some ways the FORTRAN DO looks like a COME FROM statement. After
the terminating statement number/CONTINUE is reached, control
continues at the statement following the DO. Some generous FORTRANs
would allow arbitrary statements (other than CONTINUE) for the
statement, leading to examples like:
DO 10 I=1,LIMIT
C imagine many lines of code here, leaving the
C original DO statement lost in the spaghetti...
WRITE(6,10) I,FROB(I)
10 FORMAT(1X,I5,G10.4)
in which the trapdoor is just after the statement labeled 10. (This is
particularly surprising because the label doesn't appear to have
anything to do with the flow of control at all!)
While sufficiently astonishing to the unsuspecting reader, this form
of COME FROM statement isn't completely general. After all, control
will eventually pass to the following statement. The implementation of
the general form was left to Univac FORTRAN, ca. 1975 (though a
roughly similar feature existed on the IBM 7040 ten years earlier).
The statement AT 100 would perform a COME FROM 100. It was intended
strictly as a debugging aid, with dire consequences promised to anyone
so deranged as to use it in production code. More horrible things had
already been perpetrated in production languages, however; doubters
need only contemplate the ALTER verb in [2801]COBOL.
COME FROM was supported under its own name for the first time 15 years
later, in C-INTERCAL (see [2802]INTERCAL, [2803]retrocomputing);
knowledgeable observers are still reeling from the shock.
Node:comm mode, Next:[2804]command key, Previous:[2805]COME FROM,
Up:[2806]= C =
comm mode /kom mohd/ n.
[ITS: from the feature supporting on-line chat; the term may spelled
with one or two m's] Syn. for [2807]talk mode.
Node:command key, Next:[2808]comment out, Previous:[2809]comm mode,
Up:[2810]= C =
command key n.
[Mac users] Syn. [2811]feature key.
Node:comment out, Next:[2812]Commonwealth Hackish,
Previous:[2813]command key, Up:[2814]= C =
comment out vt.
To surround a section of code with comment delimiters or to prefix
every line in the section with a comment marker; this prevents it from
being compiled or interpreted. Often done when the code is redundant
or obsolete, but is being left in the source to make the intent of the
active code clearer; also when the code in that section is broken and
you want to bypass it in order to debug some other part of the code.
Compare [2815]condition out, usually the preferred technique in
languages (such as [2816]C) that make it possible.
Node:Commonwealth Hackish, Next:[2817]compact, Previous:[2818]comment
out, Up:[2819]= C =
Commonwealth Hackish n.
Hacker jargon as spoken in English outside the U.S., esp. in the
British Commonwealth. It is reported that Commonwealth speakers are
more likely to pronounce truncations like char' andsoc', etc., as
spelled (/char/, /sok/), as opposed to American /keir/ and /sohsh/.
Dots in [2820]newsgroup names (especially two-component names) tend to
be pronounced more often (so soc.wibble is /sok dot wib'l/ rather than
/sohsh wib'l/).
Preferred [2821]metasyntactic variables include [2822]blurgle, eek,
ook, frodo, and bilbo; [2823]wibble, wobble, and in emergencies
wubble; flob, banana, tom, dick, harry, wombat, frog, [2824]fish,
[2825]womble and so on and on (see [2826]foo, sense 4). Alternatives
to verb doubling include suffixes -o-rama',frenzy' (as in feeding
frenzy), and `city' (examples: "barf city!" "hack-o-rama!" "core dump
frenzy!").
All the generic differences within the anglophone world inevitably
show themselves in the associated hackish dialects. The Greek letters
beta and zeta are usually pronounced /bee't/ and /zee't/; meta may
also be pronounced /mee't*/. Various punctuators (and even letters - Z
is called zed', notzee') are named differently: most crucially, for
hackish, where Americans use parens',brackets' and `braces' for (),
[] and {}, Commonwealth English uses brackets',square brackets' and
curly brackets', thoughparentheses' may be used for the first; the
exclamation mark, `!', is called pling rather than bang and the pound
sign, #', is called hash; furthermore, the termthe pound sign' is
understood to mean the pound currency symbol (of course).
See also [2827]attoparsec, [2828]calculator, [2829]chemist,
[2830]console jockey, [2831]fish, [2832]go-faster stripes,
[2833]grunge, [2834]hakspek, [2835]heavy metal, [2836]leaky heap,
[2837]lord high fixer, [2838]loose bytes, [2839]muddie, [2840]nadger,
[2841]noddy, [2842]psychedelicware, [2843]plingnet, [2844]raster
blaster, [2845]RTBM, [2846]seggie, [2847]spod, [2848]sun lounge,
[2849]terminal junkie, [2850]tick-list features, [2851]weeble,
[2852]weasel, [2853]YABA, and notes or definitions under [2854]Bad
Thing, [2855]barf, [2856]bogus, [2857]bum, [2858]chase pointers,
[2859]cosmic rays, [2860]crippleware, [2861]crunch, [2862]dodgy,
[2863]gonk, [2864]hamster, [2865]hardwarily, [2866]mess-dos,
[2867]nybble, [2868]proglet, [2869]root, [2870]SEX, [2871]tweak,
[2872]womble, and [2873]xyzzy.
Node:compact, Next:[2874]compiler jock, Previous:[2875]Commonwealth
Hackish, Up:[2876]= C =
compact adj.
Of a design, describes the valuable property that it can all be
apprehended at once in one's head. This generally means the thing
created from the design can be used with greater facility and fewer
errors than an equivalent tool that is not compact. Compactness does
not imply triviality or lack of power; for example, C is compact and
FORTRAN is not, but C is more powerful than FORTRAN. Designs become
non-compact through accreting [2877]features and [2878]cruft that
don't merge cleanly into the overall design scheme (thus, some fans of
[2879]Classic C maintain that ANSI C is no longer compact).
Node:compiler jock, Next:[2880]compo, Previous:[2881]compact,
Up:[2882]= C =
compiler jock n.
See [2883]jock (sense 2).
Node:compo, Next:[2884]compress, Previous:[2885]compiler jock,
Up:[2886]= C =
compo n.
[[2887]demoscene] Finnish-originated slang for `competition'. Demo
compos are held at a [2888]demoparty. The usual protocol is that
several groups make demos for a compo, they are shown on a big screen,
and then the party participants vote for the best one. Prizes (from
sponsors and party entrance fees) are given. Standard compo formats
include [2889]intro compos (4k or 64k demos), music compos, graphics
compos, quick [2890]demo compos (build a demo within 4 hours for
example), etc.
Node:compress, Next:[2891]Compu$erve, Previous:[2892]compo, Up:[2893]=
C =
compress [Unix] vt.
When used without a qualifier, generally refers to [2894]crunching of
a file using a particular C implementation of compression by Joseph M.
Orost et al. and widely circulated via [2895]Usenet; use of
[2896]crunch itself in this sense is rare among Unix hackers.
Specifically, compress is built around the Lempel-Ziv-Welch algorithm
as described in "A Technique for High Performance Data Compression",
Terry A. Welch, "IEEE Computer", vol. 17, no. 6 (June 1984), pp. 8-19.
Node:Compu$erve, Next:[2897]computer confetti,
Previous:[2898]compress, Up:[2899]= C =
Compu$erve n.
See [2900]CI$. Synonyms CompuSpend and Compu$pend are also reported.
Node:computer confetti, Next:[2901]computer geek,
Previous:[2902]Compu$erve, Up:[2903]= C =
computer confetti n.
Syn. [2904]chad. Though this term is common, this use of punched-card
chad is not a good idea, as the pieces are stiff and have sharp
corners that could injure the eyes. GLS reports that he once attended
a wedding at MIT during which he and a few other guests
enthusiastically threw chad instead of rice. The groom later grumbled
that he and his bride had spent most of the evening trying to get the
stuff out of their hair.
Node:computer geek, Next:[2905]computron, Previous:[2906]computer
confetti, Up:[2907]= C =
computer geek n.
One who eats (computer) bugs for a living. One who fulfills all thedreariest negative stereotypes about hackers: an asocial, malodorous,
pasty-faced monomaniac with all the personality of a cheese grater.
Cannot be used by outsiders without implied insult to all hackers;
compare black-on-black vs. white-on-black usage of `nigger'. A
computer geek may be either a fundamentally clueless individual or a
proto-hacker in [2908]larval stage. Also called turbo nerd',turbo
geek'. See also [2909]propeller head, [2910]clustergeeking, [2911]geek
out, [2912]wannabee, [2913]terminal junkie, [2914]spod, [2915]weenie.
Some self-described computer geeks use this term in a positivesense and protest sense 1 (this seems to have been a post-1990
development). For one such argument, see
[2916]http://www.darkwater.com/omni/geek.html. See also [2917]geek
code.
Node:computron, Next:[2918]con, Previous:[2919]computer geek,
Up:[2920]= C =
computron /kom'pyoo-tron`/
n. 1. [common] A notional unit of computing power combining
instruction speed and storage capacity, dimensioned roughly in
instructions-per-second times megabytes-of-main-store times
megabytes-of-mass-storage. "That machine can't run GNU Emacs, it
doesn't have enough computrons!" This usage is usually found in
metaphors that treat computing power as a fungible commodity good,
like a crop yield or diesel horsepower. See [2921]bitty box, [2922]Get
a real computer!, [2923]toy, [2924]crank. 2. A mythical subatomic
particle that bears the unit quantity of computation or information,
in much the same way that an electron bears one unit of electric
charge (see also [2925]bogon). An elaborate pseudo-scientific theory
of computrons has been developed based on the physical fact that the
molecules in a solid object move more rapidly as it is heated. It is
argued that an object melts because the molecules have lost their
information about where they are supposed to be (that is, they have
emitted computrons). This explains why computers get so hot and
require air conditioning; they use up computrons. Conversely, it
should be possible to cool down an object by placing it in the path of
a computron beam. It is believed that this may also explain why
machines that work at the factory fail in the computer room: the
computrons there have been all used up by the other hardware. (The
popularity of this theory probably owes something to the "Warlock"
stories by Larry Niven, the best known being "What Good is a Glass
Dagger?", in which magic is fueled by an exhaustible natural resource
called `mana'.)
Node:con, Next:[2926]condition out, Previous:[2927]computron,
Up:[2928]= C =
con n.
[from SF fandom] A science-fiction convention. Not used of other sorts
of conventions, such as professional meetings. This term, unlike many
others imported from SF-fan slang, is widely recognized even by
hackers who aren't [2929]fans. "We'd been corresponding on the net for
months, then we met face-to-face at a con."
Node:condition out, Next:[2930]condom, Previous:[2931]con, Up:[2932]=
C =
condition out vt.
To prevent a section of code from being compiled by surrounding it
with a conditional-compilation directive whose condition is always
false. The [2933]canonical examples of these directives are #if 0 (or
ifdef notdef, though some find the latter [2934]bletcherous) and endif in C. Compare [2935]comment out.Node:condom, Next:[2936]confuser, Previous:[2937]condition out,
Up:[2938]= C =
condom n.
The protective plastic bag that accompanies 3.5-inch microfloppydiskettes. Rarely, also used of (paper) disk envelopes. Unlike the
write protect tab, the condom (when left on) not only impedes the
practice of [2939]SEX but has also been shown to have a high failure
rate as drive mechanisms attempt to access the disk -- and can even
fatally frustrate insertion. 2. The protective cladding on a
[2940]light pipe. 3. `keyboard condom': A flexible, transparent
plastic cover for a keyboard, designed to provide some protection
against dust and [2941]programming fluid without impeding typing. 4.
`elephant condom': the plastic shipping bags used inside cardboard
boxes to protect hardware in transit. 5. n. obs. A dummy directory
/usr/tmp/sh, created to foil the [2942]Great Worm by exploiting a
portability bug in one of its parts.
Comments (0)