indent style n.
[C, C++, and Java programmers] The rules
one uses to indent code in a readable fashion. There are four
major C indent styles, described below; all have the aim of making
it easier for the reader to visually track the scope of control
constructs. They have been inherited by C++ and Java, which have
C-like syntaxes. The significant variable is the placement of {
and } with respect to the statement(s) they enclose and to
the guard or controlling statement (if, else,
for, while, or do) on the block, if any.
`K&R style' -- Named after Kernighan & Ritchie, because the
examples in K&R are formatted this way. Also called `kernel
style' because the Unix kernel is written in it, and the `One True
Brace Style' (abbrev. 1TBS) by its partisans. In C code, the body
is typically indented by eight spaces (or one tab) per level, as
shown here. Four spaces are occasionally seen in C, but in C++ and
Java four tends to be the rule rather than the exception.
if (<cond>) {
<body>
}
`Allman style' -- Named for Eric Allman, a Berkeley hacker who
wrote a lot of the BSD utilities in it (it is sometimes called
`BSD style'). Resembles normal indent style in Pascal and Algol.
It is the only style other than K&R in widespread use among Java
programmers. Basic indent per level shown here is eight spaces, but
four (or sometimes three) spaces are generally preferred by C++ and
Java programmers.
if (<cond>)
{
<body>
}
`Whitesmiths style' -- popularized by the examples that came
with Whitesmiths C, an early commercial C compiler. Basic indent
per level shown here is eight spaces, but four spaces are
occasionally seen.
if (<cond>)
{
<body>
}
`GNU style' -- Used throughout GNU EMACS and the Free Software
Foundation code, and just about nowhere else. Indents are always
four spaces per level, with { and } halfway between the
outer and inner indent levels.
if (<cond>)
{
<body>
}
Surveys have shown the Allman and Whitesmiths styles to be the most
common, with about equal mind shares. K&R/1TBS used to be nearly
universal, but is now much less common in C (the opening brace tends to
get lost against the right paren of the guard part in an if
or while, which is a Bad Thing). Defenders of 1TBS
argue that any putative gain in readability is less important than
their style's relative economy with vertical space, which enables
one to see more code on one's screen at once.
The Java Language Specification legislates not only the
capitalization of identifiers, but where nouns, adjectives, and
verbs should be in method, class, interface, and variable names
(section 6.8). While the specification stops short of also
standardizing on a bracing style, all source code originating from
Sun Laboratories uses the K&R style. This has set a precedent for
Java programmers, which most follow.
Doubtless these issues will continue to be the subject of holy wars.
[C, C++, and Java programmers] The rules
one uses to indent code in a readable fashion. There are four
major C indent styles, described below; all have the aim of making
it easier for the reader to visually track the scope of control
constructs. They have been inherited by C++ and Java, which have
C-like syntaxes. The significant variable is the placement of {
and } with respect to the statement(s) they enclose and to
the guard or controlling statement (if, else,
for, while, or do) on the block, if any.
`K&R style' -- Named after Kernighan & Ritchie, because the
examples in K&R are formatted this way. Also called `kernel
style' because the Unix kernel is written in it, and the `One True
Brace Style' (abbrev. 1TBS) by its partisans. In C code, the body
is typically indented by eight spaces (or one tab) per level, as
shown here. Four spaces are occasionally seen in C, but in C++ and
Java four tends to be the rule rather than the exception.
if (<cond>) {
<body>
}
`Allman style' -- Named for Eric Allman, a Berkeley hacker who
wrote a lot of the BSD utilities in it (it is sometimes called
`BSD style'). Resembles normal indent style in Pascal and Algol.
It is the only style other than K&R in widespread use among Java
programmers. Basic indent per level shown here is eight spaces, but
four (or sometimes three) spaces are generally preferred by C++ and
Java programmers.
if (<cond>)
{
<body>
}
`Whitesmiths style' -- popularized by the examples that came
with Whitesmiths C, an early commercial C compiler. Basic indent
per level shown here is eight spaces, but four spaces are
occasionally seen.
if (<cond>)
{
<body>
}
`GNU style' -- Used throughout GNU EMACS and the Free Software
Foundation code, and just about nowhere else. Indents are always
four spaces per level, with { and } halfway between the
outer and inner indent levels.
if (<cond>)
{
<body>
}
Surveys have shown the Allman and Whitesmiths styles to be the most
common, with about equal mind shares. K&R/1TBS used to be nearly
universal, but is now much less common in C (the opening brace tends to
get lost against the right paren of the guard part in an if
or while, which is a Bad Thing). Defenders of 1TBS
argue that any putative gain in readability is less important than
their style's relative economy with vertical space, which enables
one to see more code on one's screen at once.
The Java Language Specification legislates not only the
capitalization of identifiers, but where nouns, adjectives, and
verbs should be in method, class, interface, and variable names
(section 6.8). While the specification stops short of also
standardizing on a bracing style, all source code originating from
Sun Laboratories uses the K&R style. This has set a precedent for
Java programmers, which most follow.
Doubtless these issues will continue to be the subject of holy wars.
Related:
- 1TBS // n.
The "One True Brace Style";
see indent style... - Common: percent; <percent sign>; mod; grapes.
Rare: [double-oh-seven]. & Common: <ampersand>... - geek code n.
(also "Code of the Geeks"). A set of
codes commonly used in sig blocks to broadcast the interests,
skills, and aspirations of the poster. Features a... - precedence lossage /pre's*-dens los'*j/ n.
[C
programmers] Coding error in an expression due to unexpected
grouping of arithmetic or logical operators by the compiler.
Used esp. of certain common coding errors in C due... - ASCII /as'kee/ n.
[originally an acronym (American
Standard Code for Information Interchange) but now merely
conventional] The predominant character set encoding of present-day
computers.
The standard version uses 7 bits for each character... - C: n. 1. The third letter of the English alphabet. 2.
ASCII 1000011. 3. The name of a programming language... - talk mode n.
A feature supported by Unix, ITS, and some
other OSes that allows two or more logged-in users to set up a
real-time on-line conversation.
It combines the immediacy of talking with all the... - include vt.
[Usenet] 1. To duplicate a portion (or whole)
of another's message (typically with attribution to the source) in
a reply or followup,
for clarifying the context of one's response. See... - bit-paired keyboard n.,obs.
(alt. `bit-shift
keyboard') A non-standard keyboard layout that seems to have
originated with the Teletype ASR-33 and remained common for several
years on early computer equipment.
The ASR-33 was a mechanical device (see EOU), so...
From the same category:
- screw n.
[MIT] A lose, usually in software.
Especially used for user-visible misbehavior caused by a bug or
misfeature.
This use has become quite widespread outside MIT... - retrocomputing /ret'-roh-k*m-pyoo'ting/ n.
Refers to
emulations of way-behind-the-state-of-the-art hardware or software,
or implementations of never-was-state-of-the-art; esp... - crank vt.
[from automotive slang] Verb used to describe the
performance of a machine,
especially sustained performance. "This box cranks... - cup holder n.
The tray of a CD-ROM drive, or by
extension the CD drive itself.
So called because of a common tech support legend... - stack n.
The set of things a person has to do in the
future.
One speaks of the next project to be attacked as having...
