Vertical bar

Last updated
|
Vertical bar
In  Unicode U+007C|VERTICAL LINE (|, |, |)
Related
See alsoU+00A6¦ BROKEN BAR (¦)

U+2016 DOUBLE VERTICAL LINE (‖, ‖)

U+2223 DIVIDES

The vertical bar, |, is a glyph with various uses in mathematics, computing, and typography. It has many names, often related to particular meanings: Sheffer stroke (in logic), pipe, bar, or (literally the word "or"), vbar, and others. [1]

Contents

Usage

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 the word "size". These are:

Likewise, the vertical bar is also used singly in many different ways:

The double vertical bar, , is also employed in mathematics.

In LaTeX mathematical mode, the ASCII vertical bar produces a vertical line, and \| creates a double vertical line (a | b \| c is set as ). This has different spacing from \mid and \parallel, which are relational operators: a \mid b \parallel c is set as . 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 salt bridge; which is used to allow free moving ions to move.

Physics

The vertical bar is used in bra–ket notation in quantum physics. Examples:

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 is also found in later versions of DOS and Microsoft Windows.

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, 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.

<personal-name>::=<name> | <initial>

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.

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: U+01C0 for the single bar and U+01C1 for the double bar.

Some Northwest and Northeast Caucasian languages written in the Cyrillic script have a vertical bar called palochka (Russian:палочка, lit. 'little stick'), 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, [7] or caesura mark. [7]

In Sanskrit and other Indian languages, a single vertical mark, a danda, has a similar function as a period (full stop). Two bars || (a 'double danda') is the equivalent of a pilcrow in marking the end of a stanza, paragraph or section. The danda has its own Unicode code point, U+0964.

Poetry

A double vertical bar || or ǁ is the standard caesura mark in English literary criticism and analysis. It marks the strong break or caesura common to many forms of poetry, particularly Old English verse. It is also traditionally used to mark the division between lines of verse printed as prose (the style preferred by Oxford University Press), though it is now often replaced by the forward slash.

Notation

In the Geneva Bible and early printings of the King James Version, a double vertical bar is used to mark margin notes that contain an alternative translation from the original text. These margin notes always begin with the conjunction "Or". In later printings of the King James Version, the double vertical bar is irregularly used to mark any comment in the margins.

A double vertical bar symbol may be used to call out a footnote. (The traditional order of these symbols in English is *, , , §, , , so its use is very rare; in modern usage, numbers and letters are preferred for endnotes and footnotes. [8] )

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.[ citation needed ] 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).[ citation needed ]

Encoding

Solid vertical bar versus broken bar

The code point 124 (7C hexadecimal) is occupied by a broken bar in a dot matrix printer of the late 1980s, which apparently lacks a solid vertical bar. See the full picture. Dot printer ASCII0x7C+.png
The code point 124 (7C hexadecimal) is occupied by a broken bar in a dot matrix printer of the late 1980s, which apparently lacks a solid vertical bar. See the full picture.

Many early video terminals and dot-matrix printers rendered the vertical bar character as the allograph broken bar¦. This may have been to distinguish the character from the lower-case 'L' and the upper-case 'I' on these limited-resolution devices, and to make a vertical line of them look more like a horizontal line of dashes. It was also (briefly) part of the ASCII standard.

An initial draft for a 7-bit character set that was published by the X3.2 subcommittee for Coded Character Sets and Data Format on June 8, 1961, was the first to include the vertical bar in a standard set. The bar was intended to be used as the representation for the logical OR symbol. [9] A subsequent draft on May 12, 1966, places the vertical bar in column 7 alongside regional entry codepoints, and formed the basis for the original draft proposal used by the International Standards Organisation. [9] This draft received opposition from the IBM user group SHARE, with its chairman, H. W. Nelson, writing a letter to the American Standards Association titled "The Proposed revised American Standard Code for Information Interchange does NOT meet the needs of computer programmers!"; in this letter, he argues that no characters within the international subset designated at columns 2-5 of the character set would be able to adequately represent logical OR and logical NOT in languages such as IBM's PL/I universally on all platforms. [10] As a compromise, a requirement was introduced where the exclamation mark (!) and circumflex (^) would display as logical OR (|) and logical NOT (¬) respectively in use cases such as programming, while outside of these use cases they would represent their original typographic symbols:

It may be desirable to employ distinctive styling to facilitate their use for specific purposes as, for example, to stylize the graphics in code positions 2/1 and 5/14 to those frequently associated with logical OR (|) and logical NOT (¬) respectively.

X3.2 document X3.2/475 [11]

The original vertical bar encoded at 0x7C in the original May 12, 1966 draft was then broken as ¦, so it could not be confused with the unbroken logical OR. In the 1967 revision of ASCII, along with the equivalent ISO 464 code published the same year, the code point was defined to be a broken vertical bar, and the exclamation mark character was allowed to be rendered as a solid vertical bar. [12] [13] However, the 1977 revision (ANSI X.3-1977) undid the changes made in the 1967 revision, enforcing that the circumflex could no longer be stylised as a logical NOT symbol, the exclamation mark likewise no longer allowing stylisation as a vertical bar, and defining the code point originally set to the broken bar as a solid vertical bar instead; [12] the same changes were also reverted in ISO 646-1973 published four years prior.

Some variants of EBCDIC included both versions of the character as different code points. The broad implementation of the extended ASCII ISO/IEC 8859 series in the 1990s also made a distinction between the two forms. This was preserved in Unicode as a separate character at U+00A6 BROKEN BAR (the term "parted rule" is used sometimes in Unicode documentation). Some fonts draw the characters the same (both are solid vertical bars, or both are broken vertical bars). [14] [ failed verification ] The broken bar does not appear to have any clearly identified uses distinct from those of the vertical bar. [15] In non-computing use — for example in mathematics, physics and general typography — the broken bar is not an acceptable substitute for the vertical bar.

US International keyboard showing broken bar on the keycap, even though pressing
.mw-parser-output .keyboard-key{border:1px solid #aaa;border-radius:0.2em;box-shadow:0.1em 0.1em 0.2em rgba(0,0,0,0.1);background-color:#f9f9f9;background-image:linear-gradient(to bottom,#eee,#f9f9f9,#eee);color:#000;padding:0.1em 0.3em;font-family:inherit;font-size:0.85em}
| Shift+\ produces the solid vertical bar. Left side of modern US-International keyboard.JPG
US International keyboard showing broken bar on the keycap, even though pressing Shift +\ produces the solid vertical bar.
Full character set of IBM's Code page 437 rendered in VGA, which displays the broken bar glyph for codepoint 7C, despite the 1977 revision to ASCII Codepage-437.png
Full character set of IBM's Code page 437 rendered in VGA, which displays the broken bar glyph for codepoint 7C, despite the 1977 revision to ASCII

Many keyboards with US or US-International layout display the broken bar on a keycap even though the solid vertical bar character is produced in modern operating systems. This includes many German QWERTZ keyboards. This is a legacy of keyboards manufactured during the 1980s and 1990s for IBM PC compatible computers featuring the broken bar, as such computers used IBM's 8-bit Code page 437 character set based on ASCII, which continued to display the glyph for the broken bar at codepoint 7C on displays from MDA (1981) to VGA (1987) despite the changes made to ASCII in 1977. The UK/Ireland keyboard has both symbols engraved: the broken bar is given as an alternate graphic on the "grave" (backtick) key; the solid bar is on the backslash key.

The broken bar character can be typed (depending on the layout) as AltGr +` or AltGr+6 or AltGr+⇧ Shift+Right \ on Windows and Compose !^ on Linux. It can be inserted into HTML as &brvbar;

In some dictionaries, the broken bar is used to mark stress that may be either primary or secondary. That is, [¦ba] covers the pronunciations [ˈba] and [ˌba]. [16]

Unicode code points

These glyphs are encoded in Unicode as follows:

Code pages and other historical encodings

Code pages, ASCII, ISO/IEC, EBCDIC, Shift-JIS, etc.      Vertical bar (|)Broken bar (¦)
ASCII,
CP437, CP667, CP720, CP737, CP790, CP819, CP852, CP855, CP860, CP861, CP862, CP865, CP866, CP867, CP869, CP872, CP895, CP932, CP991
124 (7Ch)none
CP775 167 (A7h)
CP850, CP857, CP858 221 (DDh)
CP863 160 (A0h)
CP864 219 (DBh)
ISO/IEC 8859-1, -7, -8, -9, -13,
CP1250, CP1251, CP1252, CP1253, CP1254, CP1255, CP1256, CP1257, CP1258
166 (A6h)
ISO/IEC 8859-2, -3, -4, -5, -6, -10, -11, -14, -15, -16 none
EBCDIC CCSID 3779 (4Fh)106 (6Ah)
EBCDIC CCSID 500187 (BBh)
JIS X 0208, JIS X 0213 Men-ku-ten 1-01-35 (7-bit: 2143h; Shift JIS : 8162h; EUC: A1C3h) [lower-alpha 1] none


See also

Notes

  1. The Shift JIS and EUC encoded forms also include the ASCII vertical bar in its usual encoding (see halfwidth and fullwidth forms). The same applies when the 7-bit form is used as part of ISO-2022-JP (allowing switching to and from ASCII).

Related Research Articles

<span class="mw-page-title-main">ASCII</span> American character encoding standard

ASCII, abbreviated from American Standard Code for Information Interchange, is a character encoding standard for electronic communication. ASCII codes represent text in computers, telecommunications equipment, and other devices. Because of technical limitations of computer systems at the time it was invented, ASCII has just 128 code points, of which only 95 are printable characters, which severely limited its scope. Modern computer systems have evolved to use Unicode, which has millions of code points, but the first 128 of these are the same as the ASCII set.

The symbol # is known variously in English-speaking regions as the number sign, hash, or pound sign. The symbol has historically been used for a wide range of purposes including the designation of an ordinal number and as a ligatured abbreviation for pounds avoirdupois – having been derived from the now-rare .

A bracket is either of two tall fore- or back-facing punctuation marks commonly used to isolate a segment of text or data from its surroundings. They come in four main pairs of shapes, as given in the box to the right, which also gives their names, that vary between British and American English. "Brackets", without further qualification, are in British English the () marks and in American English the [] marks.

The slash is the oblique slanting line punctuation mark /. It is also known as a stroke, a solidus, a forward slash and several other historical or technical names. Once used to mark periods and commas, the slash is now used to represent division and fractions, exclusive 'or' and inclusive 'or', and as a date separator.

A mathematical symbol is a figure or a combination of figures that is used to represent a mathematical object, an action on mathematical objects, a relation between mathematical objects, or for structuring the other symbols that occur in a formula. As formulas are entirely constituted with symbols of various types, many symbols are needed for expressing all mathematics.

The tilde˜ or ~, is a grapheme with a number of uses. The name of the character came into English from Spanish, which in turn came from the Latin titulus, meaning 'title' or 'superscription'. Its primary use is as a diacritic (accent) in combination with a base letter; but, for historical reasons, it is also used in standalone form within a variety of contexts.

The plus sign and the minus sign are mathematical symbols used to denote positive and negative functions, respectively. In addition, + represents the operation of addition, which results in a sum, while represents subtraction, resulting in a difference. Their use has been extended to many other meanings, more or less analogous. Plus and minus are Latin terms meaning "more" and "less", respectively.

<span class="mw-page-title-main">Tab key</span> Key on a keyboard for tabulation

The tab keyTab ↹ on a keyboard is used to advance the cursor to the next tab stop.

<span class="mw-page-title-main">Pound sign</span> Currency sign

The pound sign is the symbol for the pound unit of sterling – the currency of the United Kingdom and its associated Crown Dependencies and British Overseas Territories and previously of Great Britain and of the Kingdom of England. The same symbol is used for other currencies called pound, such as the Egyptian and Syrian pounds. The sign may be drawn with one or two bars depending on personal preference, but the Bank of England has used the one-bar style exclusively on banknotes since 1975.

The prime symbol , double prime symbol , triple prime symbol , and quadruple prime symbol are used to designate units and for other purposes in mathematics, science, linguistics and music.

<span class="mw-page-title-main">Code page 437</span> Character set of the original IBM PC

Code page 437 is the character set of the original IBM PC. It is also known as CP437, OEM-US, OEM 437, PC-8, or DOS Latin US. The set includes all printable ASCII characters as well as some accented letters (diacritics), Greek letters, icons, and line-drawing symbols. It is sometimes referred to as the "OEM font" or "high ASCII", or as "extended ASCII".

<span class="mw-page-title-main">Box-drawing character</span> Unicode block group

Box-drawing characters, also known as line-drawing characters, are a form of semigraphics widely used in text user interfaces to draw various geometric frames and boxes. These characters are characterized by being designed to be connected horizontally and/or vertically with adjacent characters, which requires proper alignment. Box-drawing characters therefore typically only work well with monospaced fonts.

The hyphen-minus symbol - is the form of hyphen most commonly used in digital documents. On most keyboards, it is the only character that resembles a minus sign or a dash so it is also used for these. The name hyphen-minus derives from the original ASCII standard, where it was called hyphen–(minus). The character is referred to as a hyphen, a minus sign, or a dash according to the context where it is being used.

A whitespace character is a character data element that represents white space when text is rendered for display by a computer.

An overline, overscore, or overbar, is a typographical feature of a horizontal line drawn immediately above the text. In old mathematical notation, an overline was called a vinculum, a notation for grouping symbols which is expressed in modern notation by parentheses, though it persists for symbols under a radical sign. The original use in Ancient Greek was to indicate compositions of Greek letters as Greek numerals. In Latin, it indicates Roman numerals multiplied by a thousand and it forms medieval abbreviations (sigla). Marking one or more words with a continuous line above the characters is sometimes called overstriking, though overstriking generally refers to printing one character on top of an already-printed character.

<span class="mw-page-title-main">Mathematical operators and symbols in Unicode</span>

The Unicode Standard encodes almost all standard characters used in mathematics. Unicode Technical Report #25 provides comprehensive information about the character repertoire, their properties, and guidelines for implementation. Mathematical operators and symbols are in multiple Unicode blocks. Some of these blocks are dedicated to, or primarily contain, mathematical characters while others are a mix of mathematical and non-mathematical characters. This article covers all Unicode characters with a derived property of "Math".

In mathematical logic and computer science the symbol ⊢ has taken the name turnstile because of its resemblance to a typical turnstile if viewed from above. It is also referred to as tee and is often read as "yields", "proves", "satisfies" or "entails".

ISO 11940 is an ISO standard for the transliteration of Thai characters, published in 1998 and updated in September 2003 and confirmed in 2008. An extension to this standard named ISO 11940-2 defines a simplified transcription based on it.

In mathematics, brackets of various typographical forms, such as parentheses ( ), square brackets [ ], braces { } and angle brackets ⟨ ⟩, are frequently used in mathematical notation. Generally, such bracketing denotes some form of grouping: in evaluating an expression containing a bracketed sub-expression, the operators in the sub-expression take precedence over those surrounding it. Sometimes, for the clarity of reading, different kinds of brackets are used to express the same meaning of precedence in a single expression with deep nesting of sub-expressions.

<span class="mw-page-title-main">OCR-A</span> Typeface designed for early computer OCR

OCR-A is a font issued in 1966 and first implemented in 1968. A special font was needed in the early days of computer optical character recognition, when there was a need for a font that could be recognized not only by the computers of that day, but also by humans. OCR-A uses simple, thick strokes to form recognizable characters. The font is monospaced (fixed-width), with the printer required to place glyphs 0.254 cm apart, and the reader required to accept any spacing between 0.2286 cm and 0.4572 cm.

References

  1. Raymond, Eric S. "ASCII". The Jargon File. Archived from the original on Oct 30, 2023.
  2. 1 2 3 Weisstein, Eric W. "Single Bar". Wolfram MathWorld. Retrieved 2020-08-24.
  3. Weisstein, Eric W. "Matrix Norm". Wolfram MathWorld. Retrieved 2020-08-24.
  4. Univalent Foundations Program (2013). Homotopy Type Theory: Univalent Foundations of Mathematics (GitHub version) (PDF). Institute for Advanced Study. p. 108. Archived from the original (PDF) on 2017-07-07. Retrieved 2017-07-01.
  5. Univalent Foundations Program (2013). Homotopy Type Theory: Univalent Foundations of Mathematics (print version). Institute for Advanced Study. p. 450.
  6. Larus Thorlacius, Thordur Jonsson (eds.), M-Theory and Quantum Geometry, Springer, 2012, p. 263.
  7. 1 2 "Virgule". Oxford English Dictionary. Vol. XII (Corrected reissue ed.). Oxford University Press. 1933. p.  235..
  8. Bringhurst, Robert (2005). The Elements of Typographic Style (ver. 3.1 ed.). Point Roberts, Washington: Hartley and Marks. pp. 68–69. But beyond the ... double dagger, this order is not familiar to most readers, and never was.
  9. 1 2 Fischer, Eric (2012). The Evolution of Character Codes, 1874-1968 (Thesis). Penn State University. CiteSeerX   10.1.1.96.678 . Retrieved July 10, 2020.
  10. H. W. Nelson, letter to Thomas B. Steel, June 8, 1966, Honeywell Inc. X3.2 Standards Subcommittee Records, 1961-1969 (CBI 67), Charles Babbage Institute, University of Minnesota, Minneapolis, box 1, folder 23.
  11. X3.2 document X3.2/475, December 13, 1966, Honeywell Inc. X3.2 Standards Subcommittee Records, 1961-1969 (CBI 67), Charles Babbage Institute, University of Minnesota, Minneapolis, box 1, folder 22.
  12. 1 2 Salste, Tuomas (January 2016). "7-bit character sets: Revisions of ASCII". Aivosto Oy. urn: nbn:fi-fe201201011004. Archived from the original on 2016-06-13. Retrieved 2016-06-13.
  13. Korpela, Jukka. "Character histories - notes on some Ascii code positions". Archived from the original on 2020-03-11. Retrieved 2020-05-31.
  14. Jim Price (2010-05-24). "ASCII Chart: IBM PC Extended ASCII Display Characters" . Retrieved 2012-02-23.
  15. Jukka "Yucca" Korpela (2006-09-20). "Detailed descriptions of the characters" . Retrieved 2012-02-23.
  16. For example, "Balearic". Merriam-Webster.com Dictionary ..