パスワードを忘れた? アカウント作成
10477672 story
プログラミング

第22回・国際難解Cコードコンテストの入賞コードが公開される 14

ストーリー by hylom
ソースを変な風に成形すれば良いというものではない 部門より
insiderman 曰く、

国際難解Cコードコンテスト(International Obfuscated C Code Contest、IOCCC)第22回で入賞したソースコードが同サイトで公開された。

IOCCCは、「故意に読みづらいC言語のコードを書き、その汚さなどを競うというハッカーの奇祭」(Wikipediaより)。

複数の部門があり、それぞれ入賞コードが挙げられているが、日本人では遠藤侑介(Yusuke Endoh)氏が「Most tweetable 1-liner」wおよび「Most lazy SKIer」、「Most recyclable」、「Most solid」の4部門で入賞している。それぞれのコードは遠藤氏のブログで解説されている(「Most lazy SKIer」と「Most recyclable」のコードの解説「Most tweetable 1-liner」と「Most solid」のコードの解説)。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • by minemo (41273) on 2014年01月07日 21時19分 (#2523463) 日記
    IOCCC探してたの、コンテストの名称を思い出せなくて
  • http://ioccc.org/2013/cable3/hint.html [ioccc.org]

    難読化されてなくても理解不能っぽい。

  • by Anonymous Coward on 2014年01月08日 16時38分 (#2523853)

    圧倒的に優勝できる難解Cコードを思いついた
    しかし、それを記述するにはNDAの制約がきつすぎる

    #納品したのかよ!

    ##フィクションです(多分)

  • by Anonymous Coward on 2014年01月07日 14時59分 (#2523227)

    アーティストの使用者も多い音響合成用プログラミング言語SuperColliderを使って
    ツイート可能な楽曲をつくるsc140 [supercollider.jp]というのは以前話題になりましたが、
    ただのC言語でMML風の入力ができるシンセサイザー自体をツイートできるとは思わなかった。

  • by Anonymous Coward on 2014年01月07日 15時00分 (#2523228)

    見た目の問題で難解ってのはやめてほしいな。
    極端な話、普通にとりあえず組んでから後は変な改行とか変なスペースとか入れる作業になっちゃうし。
    リンク先のコードをそういうのなしで、素でいきなりああ書いたのなら仰天だけど。
    勿論見た目だけじゃなくて内部的にもかなりすごい事をしてるのだろう。
    でもぱっと見は普通なのに、よく読んでみたらなんだこれ、みたいなのがいいなー

    • by Anonymous Coward on 2014年01月07日 15時50分 (#2523262)
      ぐちゃっと飾りつけするのも、自動的にコードを読みやすく戻すのも、
      この大会に付いていける方々には息をするより簡単な作業なので、そこはどうでも良いんですよ。

      せいぜい、応募書類を入れる封筒は新品を使って丁寧に宛名を書く、ぐらいの礼儀作法のレベルで、
      この大会では見た目を飾り付けるのが定着しちゃっているだけですよ。

      もちろん、自動整形でインデントを戻しても、変数名や関数名がaとかbとかで読みにくいわけですが、
      それもロジックを読み進めつつ適当に読みやすく置換していけば良いだけで。
      そもそもロジックの難解さも求めてあるので、そういう、「読みやすくなる変数・関数名」がに置き換えていけるのかも怪しい気はしますけど。

      さらに、「コードを短くする怪しいテク」まで排除して、ロジックまで追いやすくして、
      ロジック自体のすごさを競おう、という考えもあるかと思いますが、まあ、さすがにそこまで来たら別の大会でしょう。
      この大会でそういう楽しみ方をしたいのであれば、ソースコードは諦めて著者の解説文を楽しむとか。
      親コメント
    • by Anonymous Coward on 2014年01月07日 16時14分 (#2523276)

      半年前の自分のコードでも読まれたらよろしいかと。

      親コメント
    • by Anonymous Coward

      もちろん普通に組んでから整形してるんですよ。

    • by Anonymous Coward

      お前さんがコードを見ずに妄想で語っていることだけは分かった

      • by Anonymous Coward

        実際にコードを読めば(読もうと多少でも試みれば)

        ぱっと見は普通なのに、よく読んでみたらなんだこれ

        どころか
        「ぱっと見てもなんだこれ、よく読んでみてもなんだこれ」
        になりますね。
        さらに言えば、最低限の整形を試みようにも困るレベル。

        • by Anonymous Coward

          文法に従って機械的に解釈しているだけとは言え、意味のあるバイナリに変換できるコンパイラは凄いな。

typodupeerror

ソースを見ろ -- ある4桁UID

読み込み中...