Mathematics The vertical bar is used as a
mathematical symbol in numerous ways. If used as a pair of brackets, it suggests the notion of size. These are: •
absolute value: |x|, read "the
absolute value of
x" •
cardinality: |S|, read "the
cardinality of the
set S" or "the
length of a
string S" •
determinant: |A|, read "the
determinant of the
matrix A". •
Propositional truncation (a
type former that truncates a type down to a
mere proposition in
homotopy type theory): for any a : A (read "term a of type A") we have |a| : \left\| A \right\| (here |a| reads "
image of a : A in \left\| A \right\|" and |a| : \left\| A \right\| reads "
propositional truncation of A") •
Integer complexity: \|n\|; reads "the complexity of the integer
n". In LaTeX
mathematical mode, the ASCII vertical bar produces a vertical line, and \| creates a double vertical line (a | b \| c is set as a | b \| c). This has different spacing from \mid and \parallel, which are
relational operators: a \mid b \parallel c is set as a \mid b \parallel c. See below about
LaTeX in text mode.
Chemistry In chemistry, the vertical line is used in
cell notation of
electrochemical cells. Example, Zn | Zn2+ || Cu2+ | Cu Single vertical lines show components of the cell which do not mix, usually being in different phases. The double vertical line ( || ) is used to represent the
salt bridge, which is used to maintain electrical neutrality within the electrochemical cell.
Physics The vertical bar is used in
bra–ket notation in
quantum physics. Examples: • |\psi\rangle: the quantum physical state \psi • \langle\psi|: the
dual state corresponding to the state above • \langle\psi|\rho\rangle: the
inner product of states \psi and \rho •
Supergroups in physics are denoted
G(
N|
M), which reads "
G,
M vertical bar
N"; here
G denotes any supergroup,
M denotes the
bosonic dimensions, and
N denotes the
Grassmann dimensions.
Computing Pipe A
pipe is an
inter-process communication mechanism originating in
Unix, which directs the output (standard out and, optionally, standard error) of one process to the input (standard in) of another. In this way, a series of commands can be "piped" together, giving users the ability to quickly perform complex multi-stage processing from the
command line or as part of a
Unix shell script ("bash file"). In most
Unix shells (command interpreters), this is represented by the vertical bar character. For example:
grep -i 'blair' filename.log |
more where the output from the grep process (all lines containing 'blair') is piped to the more process (which allows a command line user to read through results one page at a time). The same "pipe" feature has been adopted in other operating systems. This usage has led to the character itself being called "pipe".
Disjunction In many programming languages, the vertical bar is used to designate the
logic operation or, either
bitwise or or
logical or. Specifically, in
C and other languages following
C syntax conventions, such as
C++,
Perl,
Java and
C#, a | b denotes a
bitwise or; whereas a double vertical bar a || b denotes a (
short-circuited)
logical or. Since the character was originally not available in all
code pages and keyboard layouts,
ANSI C can transcribe it in form of the
trigraph ??!, which, outside string literals, is equivalent to the | character. In
regular expression syntax, the vertical bar again indicates logical
or (
alternation). For example: the Unix command
grep -E 'fu|bar' matches lines containing 'fu' or 'bar'.
Concatenation The double vertical bar operator "||" denotes
string concatenation in
PL/I,
REXX,
ooRexx, standard
ANSI SQL, and theoretical computer science (particularly
cryptography).
Delimiter Although not as common as commas or tabs, the vertical bar can be used as a
delimiter in a
flat file. Examples of a
pipe-delimited standard data format are
LEDES 1998B and
HL7. It is frequently used because vertical bars are typically uncommon in the data itself. Similarly, the vertical bar may see use as a delimiter for
regular expression operations (e.g. in
sed). This is useful when the regular expression contains instances of the more common forward slash (/) delimiter; using a vertical bar eliminates the need to escape all instances of the forward slash. However, this makes the bar unusable as the regular expression "alternative" operator.
Backus–Naur form In
Backus–Naur form, an expression consists of sequences of symbols and/or sequences separated by '|', indicating a
choice, the whole being a possible substitution for the symbol on the left.
Concurrency operator In calculi of communicating processes (like
pi-calculus), the vertical bar is used to indicate that processes execute in parallel.
APL The pipe in
APL is the modulo or
residue function between two operands and the absolute value function next to one operand.
List comprehensions The vertical bar is used for list comprehensions in some functional languages, e.g.
Haskell and
Erlang. Compare
set-builder notation.
Text markup The vertical bar is used as a special character in
lightweight markup languages, notably
MediaWiki's
Wikitext (in the templates and internal links). In LaTeX text mode, the vertical bar produces an
em dash (—). The \textbar command can be used to produce a vertical bar.
Closures The vertical bar is used to denote closures certain languages such as
Ruby and
Rust.
Phonetics and orthography In the
Khoisan languages and the
International Phonetic Alphabet, the vertical bar is used to write the
dental click (). A double vertical bar is used to write the
alveolar lateral click (). Since these are technically letters, they have their own
Unicode code points in the
Latin Extended-B range: and . Some
Northwest and
Northeast Caucasian languages written in the
Cyrillic script have a vertical bar called
palochka (), indicating the preceding consonant is an
ejective. Longer single and double vertical bars are used to mark
prosodic boundaries in the IPA.
Literature In medieval European manuscripts, a single vertical bar was a common variant of the
virgula used as a
comma, or
caesura mark.)
Music scoring In music, when writing chord sheets, single vertical bars associated with a colon (|: A / / / :|) represents the beginning and end of a section (e.g. Intro, Interlude, Verse, Chorus) of music. Single bars can also represent the beginning and end of measures (|: A / / / | D / / / | E / / / :|). A double vertical bar associated with a colon can represent the repeat of a given section (||: A / / / :|| - play twice). ==Broken bar==