yhara@NaClです。仙台では、久々にあのコンテストの開催が予定されています。RubyKaigi」は、簡単にいうと普通でないRubyプログラムのコンテストです。普通でない、とはどういうことでしょうか?説明するよりも見てもらった方が早いと思うので、今日は過去のTRICKの入賞作品を振り返ってみます。あなたの知らないRubyの世界が広がっているはずです。trick2013TRICKの第一回は2013年に開催されました。銅賞はmameさんの作品で、実行すると/dev/dspを利用して音楽が再生されます(動画)。#(後略)長いので省略していますが、後ろの部分が楽譜データになっています。実行すると自分自身を出力する、いわゆるQuineにもなっています。銀賞はshinhさんの作品で、Rubyプログラムとして実行可能なポエムです。program一見ただの文章に見えますが、正しいRubyプログラムになっており、rubyで実行してもエラーになりません(出力もありませんが)。金賞はkinabaさんの作品で、ASCIIの印字可能文字を一度ずつ使ったワンライナです。3_0-~$.+=9/2^5;)<18*7and:`#実行すると、ASCIIの印字可能文字が一度ずつ、ASCIIコード順に出力されます。!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~すべての文字を一回ずつ使うという意味で、Rubyにおけるパングラムと言えるでしょう。Magagineにも記事があります。trick2015TRICKの第二回は2015年に開催されました。銅賞はmonaeさんの作品で、実行するとサイズを二倍にした似たようなプログラムが出力されます。;;その出力を再度実行するとサイズがさらに倍と、実行の度に大きくなっていきます。Nakanoさんの作品で、コラッツ数列を出力するプログラムです。%%",%*p(_||=eval($**%%%))異常に読みづらいので、Ruby力に自信のある方はぜひ読解にチャレンジしてください。金賞はふたたびkinabaさんの作品で、実行すると円周率が出力されます。02private(後略)実はソースコード中の「単語」(token)の長さを先頭から見ていくと、以下のように3.1415926...のようになっているのでした。Magagineにも記事があります。FINALはただいま応募作品を募集中です。締切は今月末の3月31日です。Rubyにはまだまだ知られざる側面があるはずです。たくさんの応募をお待ちしております。仙台の会場にて行われ、私も審査員として登壇する予定です。