IOCCC 2013の解説
全体の印象
プログラムの挙動や発想のおもしろさで競い合うコンクールとして、安定してきた。
コード読解を楽しむというより、動かして挙動やアイデアを眺める楽しみ方が向いている作品が多い。
逆に言うと、アイデア一発の荒削りな作品は通りにくく、「作り込み」が求められる傾向が強くなってきた。
Best of Showの[[2013/cable2]]は、手書きフォントデータを含む完結したOCRプログラムで、非常に作り込まれている。
さらに同作者の[[2013/cable3]]は、8086エミュレータという大作。
[[2013/birken]]は「テトリスで絵をかく」というアイデアがおもしろい。
[[2013/endoh2]]は、自分自身をJPEGに埋め込んで出力するQuine。
[[2013/endoh4]]の凸包ビューアはいろいろな点集合データを与えて挙動楽しむことができるだろう。
これらはこの年のIOCCCを象徴する作品群である。
一方で、「IOCCCならでは」という作品が減っていると感じるかもしれない。
数学やファイル仕様のようにC言語以外の知識がないと理解できない作品が増えた上、作品の規模も大きいのでそもそも解読することは前提になく、挙動だけを楽しむ方向に焦点が移っていることは否めない。
そのような寂しさを感じる人には、[[2013/misaka]]をおすすめしたい。
[[2011/akari]]と同じ作者の作品で、コード遊びの真髄が遺憾なく発揮されており、間違いなくIOCCCでしか見られない作品である。
また、[[2013/robison]]も理不尽な制約の下で書かれたプログラムであり、とてもIOCCCらしさを感じることができる。
この年の特徴としては、ワンライナー作品が2件採択されていることが挙げられる。
[[2013/cable1]]は(この年ではめずらしい)アイデア一発のワンライナーであり、[[2013/endoh3]]は逆に非常に作り込まれたワンライナー。
同じ作者の作品が同一大会で4つ入賞となったのは初。
この年は更に3作品を入選させた作者もいるため、作品数は15だが入賞者は9人となっている。
[[2013/mills]]の作者は20年ぶりの入賞。
また、IOCCCのサイズルールが若干変わった。
審査員がiocccsizeという測定用C言語プログラムを提供し、これまでの複雑だった空白文字ルールは、このツールが2053以下と言えばよいこととなった(2053は2048以上の最小の素数)。
iocccsizeは基本的には従来の空白文字ルールと同じだが、C言語のほとんどの予約語を1とカウントする点が異なる。
このツールにバグがある場合はツールの挙動が優先されるとguideline.txtに書いてあるため、この年はツールのバグをつくことがひとつのテーマになった。
なお、総バイト数の制限は4096のまま変わっていない、
入賞作品一覧