` (Grave Accent) is ASCII code point 96 (0x60), Unicode U+0060, and a printable punctuation character. It's the backward-leaning tick that mirrors the apostrophe — in French and Italian, it marks an open vowel sound (è, à), but on a programmer's keyboard it leads an entirely different life. JavaScript ES6 made the backtick a string delimiter for template literals, where ${expression} allows inline interpolation — a feature developers had wanted for years. Markdown uses single backticks for inline code and triple backticks for fenced code blocks, making it the character that tells a renderer to stop interpreting formatting. In Unix shells, backticks originally performed command substitution: `date` would execute date and insert its output. This syntax still works but nests terribly — the $(...) replacement exists because escaping backticks inside backticks required doubling them in ways that became unreadable fast. The trap is visual: on many fonts the backtick and the apostrophe (0x27) are nearly identical at small sizes, and swapping one for the other produces different behavior in every context that distinguishes them. Like the circumflex, the grave accent entered ASCII as a standalone character because implementing true combining diacritics was impractical on 1960s hardware. UTF-8 encodes it as a single byte 0x60. Unicode classifies it as Sk (Symbol, Modifier) with the name GRAVE ACCENT. The combining grave (U+0300) is the version that actually attaches to a preceding letter, while 0x60 remains a freestanding symbol that no Unicode-aware renderer will place atop anything.
char c = '`';// ASCII 96 (0x60) literalif ((unsigned char)c == 0x60) c = '\''; // swap to apostrophe
In JavaScript and TypeScript, backtick strings (`hello ${name}`) support variable interpolation and multi-line text. They replaced awkward concatenation ('hello ' + name) and were added in ES6 (2015). The backtick was chosen because single and double quotes were already taken for regular strings.
Single backticks create inline code: `like this`. Triple backticks create code blocks with syntax highlighting (```python). This is universal across GitHub, Stack Overflow, Discord, Slack, and most documentation platforms. Nesting backticks requires using more backticks: `` `code` ``.
Backticks perform command substitution in Bash: `date` executes the date command and substitutes its output. However, $(date) is the modern replacement — it's nestable, more readable, and less error-prone. Backtick substitution is considered legacy syntax.
MySQL uses backticks to quote identifiers (table/column names): `select`, `order`, `table`. This allows using reserved words as names. PostgreSQL uses double quotes instead ("select"). Standard SQL specifies double quotes, but MySQL's backtick convention is deeply entrenched.