世の中にはどう作っているのか分からないものがあります。例えば山手Quineです。Rubyコードとして実行すると、文字列が出力されて、それがさらに実行できるという面白い仕組みです。 今回はその第2弾ともいえるSmileを紹介します。アスキーアートのように見えますが、コードとして実行できます。

Smileの使い方

内容です。笑っている絵文字のように見えます。

実行するとアニメーションになります。

Smileは32bitの環境でないと実行できないようです。64bitのWindowsでは実行失敗しました。READMEでは解説も書かれていますが、理解するのは相当困難かも知れません。興味がある方はぜひ解読、そして自分だけのプログラム作りにチャレンジしてみてください。

SmileはJavaScript製のオープンソース・ソフトウェア(GPL v3)です。

DOSBox xyzzy/smile: When ASCII art is the executable