これもビジュアルプログラミング言語ということなのだろうか？

プログラミング言語は、単語と記号による予約語の組み合わせでプログラムを記述する。予約語の種類はプログラミング言語によって決まっていて、たいていは簡単な英単語だ。しかし本質的には、数個から百数十個のキーワードを用意し、それをコンパイラが区別できればよい。だからたとえば、英語ではなく日本語を予約語にしたプログラミング言語も、古くはぴゅう太のカナBASICからなでしこまで、各種試みられている。

日本独自に発達してきた携帯電話文化から生まれた絵文字は、現在では国際標準の文字コードであるUnicodeにemojiとして取り入れられている。ハートマークやスマイルマークから、何に使うのかと思うような絵文字まで用意されている。Unicodeに対応したフォントとアプリケーションを使えば、統一規格の絵文字を自由に表示できる。

ということは、予約語をすべて絵文字にしたプログラミング言語があっても、おかしくない。それが「Emojicode」だ。

Emojicodeのサンプルプログラム

Emojicodeはオープンソースで開発されたオブジェクト指向のプログラミング言語である。OS XとLinuxに対応したバイナリおよびソースコードは、GitHubで配布されているので、環境があれば試してみることもできる。馴れれば可読性はあるが、実際に絵文字を入力する手間が大変そうだ。

GitHubのリポジトリ

変わった予約語を持つプログラミング言語はいくつもある。古典的なプログラミング言語であるLispは、「True（真）」という値が頻出するので、省略して「T」1文字を予約語にしてしまった。APLは独自の記号を多用し読みやすく工夫してあるが、かつてはそれを表示する専用端末が必要であった。

こうした真面目な言語の他に、かなりおかしなプログラミング言語も存在する。Brainfuckは9種類の記号だけでプログラムをすべて記述してしまう、非常に難解で非実用的なプログラミング言語だ。さらに3種類の記号、しかも人間の目には区別がつかない空白・タブ・改行だけで記述させるWhitespaceも存在する。

Emojicodeが、こうしたジョークソフトの一種なのか、コンピュータと人間の新しいインタフェースを提案するものなのかは、まだわからない。