ASCII Pronunciation Rules for Programmers

As programmers, we deal with a lot of unusual keyboard characters that typical users rarely need to type, much less think about:

This is a companion discussion topic for the original blog entry at:

I really appreciate the inclusion of the INTERCAL pronunciations.

I’ve always referred to the one labeled Bar as a Hard Return. Not sure why but I think it made sense to me at one point in time.

That guy’s just making stuff up

The word ampersand is derived from the phrase “and per se and”, (i.e., and in and of itself). So it’s a reasonable way to spell it, really.

I’m surrounded by people who call this character “whack”: /

Would that make this one backwhack? \

It’s probably useful to note that much of the usage of these characters and the terms for them came about (a) in the U.S., and (b) in the Unix culture (which includes shell and C and Perl programming cultures, predating the rise of Python and Ruby and C#).

This is why the solution to Marius Gundersen’s problem is to get an American keyboard for programming. It’s also why there’s so much apparent ignorance of non-U.S. usage of these terms or characters in the list.

And I’m amused at all the references to Ruby terminology that actually originated in Perl, such as the “spaceship” operator.

It should probably be noted that all of these symbols have typographical names that are standardized. It’s true that an “exclamation point” can be used in some languages as the logical “not” operand, for example… but that doesn’t change the name of the symbol itself.

One need only refer to a typographic specification / font specification to learn the names of those symbols. (BTW, some of the names given above refer to a different symbol tha the one pictured – a cedilla, for example, is nothing like a comma).

Also, there’s a difference between a hyphen, a dash, and a minus sign – functionally and typographically. On a keyboard, they may be one and the same, but software that deals with typography will differentiate (in fact, there are different “dashes” of different sizes intended for different purposes; look up “emdash”).

No one else calls “,” the “sequential separation operator”?

Common perl pronunciations:

  •  # arrow

= # fat arrow
= # spaceship operator
~ # tilde

# hash

! # not , bang
@ # at, ampersand
$ # dollar
[] # square brackets
() # brackets
{} # curlies, curly brackets
` # back tick
"" # double quote
’ # single quote
| # pipe

  •     # asterix, star

    left angle bracket, right angle bracket

In perl there are operators that have identical pronunciation, eg “==” and “eq” which differ by the context they give to. Both pronounced equals.

I rarely pronounce symbols them the same unless I’m actually dictating. Usually, when paring or discussing code, it’s just a matter of describing the intent or effect.

ah, “no HTML” includes the spaceship operator - though it got mentioned above for ruby.
left angle bracket, equals, right angle bracket # spaceship

re: pound # from wikipedia:

In some regions of the United States and Canada, the symbol is traditionally called the pound sign, but in others, the number sign. This derives from a series of abbreviations for pound, which is a unit of weight. At first “lb.” was used; however, printers later designed a font containing a special symbol of an “lb” with a line through the ascenders so that the lowercase letter “l” would not be mistaken for the number “1”. Unicode character U+2114 (#8468;) is called the “LB Bar Symbol”, and it is a cursive development of this symbol. Ultimately, there was the reduction to a combination of two horizontal strokes (cf. skewed “=”) and two forward-slash-like strokes (cf. “//”).

~ is used a lot if you’re using *nix. Shortcut for the current user’s home directory.

If the $ is called “string” shouldn’t you list the ? as “print”?

So what is an octothorpe then?

@Rod: As for how to pronounce the ‘lambda’ symbol = in C# 3.0, MSDN says it’s pronounced as “goes to”, which I never really grokked. Anyone care to explain?

x = x * x;
The lambda expression x = x * x is read “x goes to x times x.”


Regarding and

I’ve always called these “inequalities” when pressed beyond “less than” or “greater than”

Since, you know… it IS an inequality.

I’m surprised ` = back tick is listed as rare. That’s the only way I hear it in computing circles (linguistic circles is obviously a different story).

My everyday use:

bang, quote, octothorpe, dollar, percent, ampersand, tick, open paren/close paren, open square/close square, open curly/close curly, left angle/right angle, splat, plus, comma, dash, dot, wack, backwack, colon, semicolon, equal, question mark, at, caret, underline, backtick, bar, tilde

I will say full-stop when dictating sentances, and sharp when talking about C#/F#,etc#.

My favorite spoken punctuation was a Chinese doctor who called the colon a (read REALLY fast with weak T pronunciation) “dot over dot”.

I installed a british voice on my Tom Tom and it refers to the “dash” as a “minus” as in: “Take exit 48A minus 48B in 300 yards”…

@ is an ‘atmark’.