Throw away your current barbaric programming language! Programming Emoji is the future of computation.

by worstideas


Essentially all major programming languages exclusively use keywords written in English. (For a couple of exceptions, see the addendum at the end.)

But this doesn’t have to be the case!


By using symbols instead of words, we can convey a concept both more concisely and more easily across languages.

See below for a few suggested changes:


Fig 1: This image of a snake eating its own tail is a much more visceral and obvious representation of an endless cycle than the words “WHILE TRUE.”


Fig 2: “IF” and “ELSE” have specific meanings in English. But “Else” is also a Scandinavian name! By using these unambiguous symbols, we avoid any existing meanings that might confuse people.


Fig 3: Data types (“integer” / “floating point number” / “text string”) can be replaced by these intuitive images instead. This also avoids the issue of having multiple synonyms for each type. For example, a non-integer number could be called a “float,” a “real,” a “double,” etc.—but there’s only ONE symbol to represent this concept.



Fig 4: Some languages use “for” to create a loop, while others use “foreach” (or “forEach,” or “for (item) in (set)”). To prevent confusion, we can standardize on a single symbol (above) to convey the idea of iteration through a loo.


Don’t write another line of code in your old-fashioned text-based programming language! Programming emoji is the future.

PROS: More easily seen at small font sizes. Works across languages, and prevents any misunderstanding arising from a word having an existing unrelated-to-programming meaning (e.g. “float” meaning “to rise to the surface of water” in addition to “a ‘floating point’ number”).

CONS: Requires new custom fonts and/or Emoji support.


Fig 5: An extended set of proposed replacements for basic programming terms. Color is optional, but recommended.


Here are a couple of programming languages that can make use of non-ASCII symbols:

  • APL,” a language created in 1964, is well known for making use of a special set of symbols. Here is an example from Wikipedia: (~RR∘.×R)/R1ιR . It is actually possible to order a keyboard with these symbols printed right on the key caps!
  • Perl 6 supports numerical characters like “” (a fraction) or “” (a Roman numeral), as documented here.