The evolution of language symbols

In some of the languages that evolved in the 1960s, like APL, and Algol, the symbols that were used quite different to those used today. For example Algol 68 used the following symbols:

∨, ∧, ¬, ≠, ≤, ≥, ×, ÷, ⌷, ↑, ↓, ⌊, ⌈ and ⊥

Many of these symbols came directly from their mathematical counterparts and were mapped on keyboards such as the IBM 2741. But the decline of these languages in the face of newcomers such as C displaced these symbols in favour of newer ones which were often less complex. Over time keyboard layouts became less complex too. The symbol for logical AND evolved from ∧ in Algol to && in C. Less-than-or-equal-to evolved from ≤ to <=. Eventually, even Algol had to adopt, as the characters were just no longer available. Many Algol 68 compilers uses <= for ≤, or alternatively allow the use of LE as well.

Would using symbols such as ≤ make a programming language easier to use? Maybe. More concerning is that there seem to be *so* many different operators in different languages. Let’s take the example of “not equal“. In mathematics, ≠ is the symbol for not equal. Consider the following languages:

Fortran      : .NE. /=
C, Python    : !=
Algol68      : ≠ /= ne
Basic, Pascal: <>
Matlab       : ~=
Ada          : /=

It would be easier to transfer information from one language to another if the basic operators were the same, even if control structures were different.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s