I have been listening to the reaction on the web to the incorporation of an emoji as a unicode symbol in perl6 rakudo. Here’s a flavour…
The rationale for the use of unicode symbols is as follows:
- These represent operations that are rare
- They relate to a specific domain (in this case, concurrency)
- Programmers can always fall back on the ASCII version (e.g. atomic-inc )
BTW- ASCII versions are known as Texas versions since they are always bigger
Certainly this has caused some consternation – ranging from how can I type ⚛️ on my keyboard (hit CTRL-CMD-SPACE if you are on macOS ) to this will never be accepted for the coding standards of my company.
On reflection, while it is understandable that programmers have a well established comfort zone of ASCII text and using English for keywords, I think that perl6 is leading the way on an irresistible path. Of the 6.5bn people on the planet, only a small fraction prefer to work in English – or even in Latin alphabets. Now, the pioneering work to embed unicode in a programming language will open the doors to all kinds of invention. What about:
- A slang (i.e. a perl6 sublanguage) for the French, Germans or Japanese programmer
- Ability to parse all unicode alphabets – so linguists can digitize, analyze and compose writing from all parts of the globe, even dead scripts like Egyptian
- Or, back to the point, opening a new world of symbol space to side step the crammed ASCII non alphanumeric characters that confines our programming
And this, in combination with perl6 Grammars, opens some interesting conceptual doors.