This recipe isn't quite as non-Newtonian as a pure cornstarch
ooblick, but has an appropriately slimy feel.
Some, however, insist that the notion of an ooblick *recipe*
is far too mechanical, and that it is best to add the water in
small increments so that the various mixed states the cornstarch
goes through as it *becomes* ooblick can be grokked in
fullness by many hands. For optional ingredients of this
experience, see the "{Ceremonial Chemicals}" section of
{appendix B}.
:op: /op/ [IRC] n. Someone who is endowed with privileges on
{IRC}, not limited to a particular channel. These are generally
people who are in charge of the IRC server at their particular
site. Sometimes used interchangably with {CHOP}. Compare
{sysop}.
:open: n. Abbreviation for `open (or left) parenthesis' --- used when
necessary to eliminate oral ambiguity. To read aloud the LISP form
(DEFUN FOO (X) (PLUS X 1)) one might say: "Open defun foo, open
eks close, open, plus eks one, close close."
:Open DeathTrap: n. Abusive hackerism for the Santa Cruz
Operation's `Open DeskTop' product, a Motif-based graphical
interface over their UNIX. The funniest part is that this was
coined by SCO's own developers...compare {AIDX},
{terminak}, {Macintrash} {Nominal Semidestructor},
{ScumOS}, {sun-stools}, {HP-SUX}.
:open switch: [IBM: prob. from railroading] n. An unresolved
question, issue, or problem.
:operating system:: [techspeak] n. (Often abbreviated `OS') The
foundation software of a machine, of course; that which schedules
tasks, allocates storage, and presents a default interface to the
user between applications. The facilities an operating system
provides and its general design philosophy exert an extremely
strong influence on programming style and on the technical cultures
that grow up around its host machines. Hacker folklore has been
shaped primarily by the {{UNIX}}, {{ITS}}, {{TOPS-10}},
{{TOPS-20}}/{{TWENEX}}, {{WAITS}}, {{CP/M}}, {{MS-DOS}}, and
{{Multics}} operating systems (most importantly by ITS and
UNIX).
:optical diff: n. See {vdiff}.
:optical grep: n. See {vgrep}.
:Orange Book: n. The U.S. Government's standards document
`Trusted Computer System Evaluation Criteria, DOD standard
5200.28-STD, December, 1985' which characterize secure computing
architectures and defines levels A1 (most secure) through D
(least). Stock UNIXes are roughly C1, and can be upgraded to
about C2 without excessive pain. See also {{book titles}}.
:oriental food:: n. Hackers display an intense tropism towards
oriental cuisine, especially Chinese, and especially of the spicier
varieties such as Szechuan and Hunan. This phenomenon (which has
also been observed in subcultures that overlap heavily with
hackerdom, most notably science-fiction fandom) has never been
satisfactorily explained, but is sufficiently intense that one can
assume the target of a hackish dinner expedition to be the best
local Chinese place and be right at least three times out of four.
See also {ravs}, {great-wall}, {stir-fried random},
{laser chicken}, {Yu-Shiang Whole Fish}. Thai, Indian,
Korean, and Vietnamese cuisines are also quite popular.
:orphan: [UNIX] n. A process whose parent has died; one inherited by
`init(1)'. Compare {zombie}.
:orphaned i-node: /or'f*nd i:'nohd/ [UNIX] n. 1. [techspeak] A
file that retains storage but no longer appears in the directories
of a filesystem. 2. By extension, a pejorative for any person
serving no useful function within some organization, esp.
{lion food} without subordinates.
:orthogonal: [from mathematics] adj. Mutually independent; well
separated; sometimes, irrelevant to. Used in a generalization of
its mathematical meaning to describe sets of primitives or
capabilities that, like a vector basis in geometry, span the
entire `capability space' of the system and are in some sense
non-overlapping or mutually independent. For example, in
architectures such as the PDP-11 or VAX where all or nearly all
registers can be used interchangeably in any role with respect to
any instruction, the register set is said to be orthogonal. Or, in
logic, the set of operators `not' and `or' is orthogonal,
but the set `nand', `or', and `not' is not (because any
one of these can be expressed in terms of the others). Also used
in comments on human discourse: "This may be orthogonal to the
discussion, but...."
:OS: /O-S/ 1. [Operating System] n. An abbreviation heavily used in email,
occasionally in speech. 2. n.,obs. On ITS, an output spy. See
"{OS and JEDGAR}" (in {appendix A}).
:OS/2: /O S too/ n. The anointed successor to MS-DOS for Intel
286- and 386-based micros; proof that IBM/Microsoft couldn't get it
right the second time, either. Mentioning it is usually good for a
cheap laugh among hackers --- the design was so {baroque}, and
the implementation of 1.x so bad, that 3 years after introduction
you could still count the major {app}s shipping for it on the
fingers of two hands --- in unary. Often called `Half-an-OS'. On
January 28, 1991, Microsoft announced that it was dropping its OS/2
development to concentrate on Windows, leaving the OS entirely in
the hands of IBM; on January 29 they claimed the media had got the
story wrong, but were vague about how. It looks as though OS/2 is
moribund. See {vaporware}, {monstrosity}, {cretinous},
{second-system effect}.
:out-of-band: [from telecommunications and network theory] adj.
1. In software, describes values of a function which are not in its
`natural' range of return values, but are rather signals that
some kind of exception has occurred. Many C functions, for
example, return either a nonnegative integral value, or indicate
failure with an out-of-band return value of -1. Compare
{hidden flag}, {green bytes}. 2. Also sometimes used to
describe what communications people call `shift characters',
like the ESC that leads control sequences for many terminals, or
the level shift indicators in the old 5-bit Baudot codes. 3. In
personal communication, using methods other than email, such as
telephones or {snail-mail}.
:overflow bit: n. 1. [techspeak] On some processors, an attempt to
calculate a result too large for a register to hold causes a
particular {flag} called an {overflow bit} to be set.
2. Hackers use the term of human thought too. "Well, the {{Ada}}
description was {baroque} all right, but I could hack it OK until
they got to the exception handling ... that set my overflow bit."
3. The hypothetical bit that will be set if a hacker doesn't get to
make a trip to the Room of Porcelain Fixtures: "I'd better process
an internal interrupt before the overflow bit gets set".
:overflow pdl: [MIT] n. The place where you put things when your
{pdl} is full. If you don't have one and too many things get
pushed, you forget something. The overflow pdl for a person's
memory might be a memo pad. This usage inspired the following
doggerel:
Hey, diddle, diddle
The overflow pdl
To get a little more stack;
If that's not enough
Then you lose it all,
And have to pop all the way back.
--The Great Quux
The term {pdl} seems to be primarily an MITism; outside MIT this
term would logically be replaced by `overflow {stack}', but
the editors have heard no report of the latter term actually being
in use.
:overrun: n. 1. [techspeak] Term for a frequent consequence of data
arriving faster than it can be consumed, esp. in serial line
communications. For example, at 9600 baud there is almost exactly
one character per millisecond, so if your {silo} can hold only
two characters and the machine takes longer than 2 msec to get to
service the interrupt, at least one character will be lost.
2. Also applied to non-serial-I/O communications. "I forgot to pay
my electric bill due to mail overrun." "Sorry, I got four phone
calls in 3 minutes last night and lost your message to overrun."
When {thrash}ing at tasks, the next person to make a request
might be told "Overrun!" Compare {firehose syndrome}. 3. More
loosely, may refer to a {buffer overflow} not necessarily
related to processing time (as in {overrun screw}).
:overrun screw: [C programming] n. A variety of {fandango on
core} produced by scribbling past the end of an array (C
implementations typically have no checks for this error). This is
relatively benign and easy to spot if the array is static; if it is
auto, the result may be to {smash the stack} --- often resulting
in {heisenbug}s of the most diabolical subtlety. The term
`overrun screw' is used esp. of scribbles beyond the end of
arrays allocated with `malloc(3)'; this typically trashes the
allocation header for the next block in the {arena}, producing
massive lossage within malloc and often a core dump on the next
operation to use `stdio(3)' or `malloc(3)' itself. See
{spam}, {overrun}; see also {memory leak}, {memory
smash}, {aliasing bug}, {precedence lossage}, {fandango on
core}, {secondary damage}.
= P =
=====
:P.O.D.: /P-O-D/ Acronym for `Piece Of Data' (as opposed to a
code section). Usage: pedantic and rare. See also {pod}.
:padded cell: n. Where you put {luser}s so they can't hurt
anything. A program that limits a luser to a carefully restricted
subset of the capabilities of the host system (for example, the
`rsh(1)' utility on USG UNIX). Note that this is different
from an {iron box} because it is overt and not aimed at
enforcing security so much as protecting others (and the luser)
from the consequences of the luser's boundless na"ivet'e (see
{na"ive}). Also `padded cell environment'.
:page in: [MIT] vi. 1. To become aware of one's surroundings again
after having paged out (see {page out}). Usually confined to
the sarcastic comment: "Eric pages in. Film at 11." See
{film at 11}. 2. Syn. `swap in'; see {swap}.
:page out: [MIT] vi. 1. To become unaware of one's surroundings
temporarily, due to daydreaming or preoccupation. "Can you repeat
that? I paged out for a minute." See {page in}. Compare
{glitch}, {thinko}. 2. Syn. `swap out'; see {swap}.
:pain in the net: n. A {flamer}.
:paper-net: n. Hackish way of referring to the postal service,
analogizing it to a very slow, low-reliability network. USENET
{sig block}s not uncommonly include a "Paper-Net:" header just
before the sender's postal address; common variants of this are
"Papernet" and "P-Net". Compare {voice-net}, {snail-mail}.
:param: /p*-ram'/ n. Shorthand for `parameter'. See also
{parm}; compare {arg}, {var}.
:PARC: n. See {XEROX PARC}.
:parent message: n. See {followup}.
:parity errors: pl.n. Little lapses of attention or (in more severe
cases) consciousness, usually brought on by having spent all night
and most of the next day hacking. "I need to go home and crash;
I'm starting to get a lot of parity errors." Derives from a
relatively common but nearly always correctable transient error in
RAM hardware.
:Parkinson's Law of Data: prov. "Data expands to fill the space
available for storage"; buying more memory encourages the use of
more memory-intensive techniques. It has been observed over the
last 10 years that the memory usage of evolving systems tends to
double roughly once every 18 months. Fortunately, memory density
available for constant dollars tends to double about once every
12 months (see {Moore's Law}); unfortunately, the laws of
physics guarantee that the latter cannot continue indefinitely.
:parm: /parm/ n. Further-compressed form of {param}. This term
is an IBMism, and written use is almost unknown outside IBM
shops; spoken /parm/ is more widely distributed, but the synonym
{arg} is favored among hackers. Compare {arg}, {var}.
:parse: [from linguistic terminology] vt. 1. To determine the
syntactic structure of a sentence or other utterance (close to the
standard English meaning). "That was the one I saw you." "I
can't parse that." 2. More generally, to understand or
comprehend. "It's very simple; you just kretch the glims and then
aos the zotz." "I can't parse that." 3. Of fish, to have to
remove the bones yourself. "I object to parsing fish", means "I
don't want to get a whole fish, but a sliced one is okay". A
`parsed fish' has been deboned. There is some controversy over
whether `unparsed' should mean `bony', or also mean
`deboned'.
:Pascal:: n. An Algol-descended language designed by Niklaus Wirth
on the CDC 6600 around 1967--68 as an instructional tool for
elementary programming. This language, designed primarily to keep
students from shooting themselves in the foot and thus extremely
restrictive from a general-purpose-programming point of view, was
later promoted as a general-purpose tool and, in fact, became the
ancestor of a large family of languages including Modula-2 and
{{Ada}} (see also {bondage-and-discipline language}). The
hackish point of view on Pascal was probably best summed up by a
devastating (and, in its deadpan way, screamingly funny) 1981 paper
by Brian Kernighan (of {K&R} fame) entitled "Why Pascal is
Not My Favorite Programming Language", which was turned down by the
technical journals but circulated widely via photocopies. It was
eventually published in "Comparing and Assessing Programming
Languages", edited by Alan Feuer and Narain Gehani (Prentice-Hall,
1984). Part of his discussion is worth repeating here, because its
criticisms are still apposite to Pascal itself after ten years of
improvement and could also stand as an indictment of many other
bondage-and-discipline languages. At the end of a summary of the
case against Pascal, Kernighan wrote: