パスワードを忘れた? アカウント作成
4104 story

O'Camlが第五回 ICFP プログラミングコンテストを制す 29

ストーリー by Oliver
hello-world 部門より

yt曰く、"98 年から毎年行われている ICFP 主催のプログラミングコンテストですが,今年はプログラミング言語に O'Caml を使った日本人チームが優勝したようです.
ICFP プログラミングコンテストは"Is your favorite programming language the best?"などのテーマで毎年様々な課題に挑戦するチームを募集し,プログラム言語の優秀さを競い合うコンテストです.課題が公開されてからプログラムの提出を締め切るまでの時間が非常に短いため,短時間でバグのないプログラミングが要求されます.関数型言語である O'Caml は 1999年, 2000年も優勝を飾っているほか,2001 年は Haskell が制するなど関数型言語の活躍が目立ちます.
今年の課題は主催者側が用意した仮想世界での多人数参加型ゲームでプレイヤーを演じるプログラムを作成し,トーナメント方式で対戦させトーナメントの優勝者がコンテストの優勝者となります.ちなみに 1 等の賞金は $1000 USD です./.Jer のみなさんもご自慢の言語とともに来年参加されてみてはどうでしょう?"

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • by yuu3261 (11831) on 2002年10月13日 6時55分 (#182700)
    優秀なのか、関数型言語を使いこなせる連中に優秀なのが多いのか・・どっちだろう。両方かな?
    • 課題が公開されてからプログラムの提出を締め切るまでの時間が非常に短いため,短時間でバグのないプログラミングが要求されます.


      制限時間が72時間のようで。
      課題は見ていませんが、きっとオブジェクト指向なんかだとタイプ量なども含めて時間をより多くくってしまうのでしょう。

      関数型言語を使いこなせる人々が優秀だと言うのも否めないですけど。
      --
      // Give me chocolates!
      親コメント
      • Re:関数型言語が (スコア:2, すばらしい洞察)

        by kraymor (2340) on 2002年10月13日 9時58分 (#182728) ホームページ
        課題は見ていませんが、きっとオブジェクト指向なんかだとタイプ量なども含めて時間をより多 くくってしまうのでしょう。

        たぶん、個人の能力もあるのでしょうが、72時間の制限で作れる規模のソフトウェアの場合、OOの持つ特徴の恩恵を受ける前にコードが完成してしまうというのはあるかもしれません。ちょっと違うかもしれませんが、それなりの規模のソフトウェアと同じようにUMLつかって設計した場合、コードを書き始める前にタイムリミットを迎える恐れもあるかもしれません。

        異なる時間制限をもったいくつかのコンテストがあればきっとそれぞれの優勝者の使う言語の傾向は異なってくると思います。要は適材適所ってことで。

        --
        // kraymor
        親コメント
        • by G7 (3009) on 2002年10月14日 13時00分 (#183060)
          >OOの持つ特徴の恩恵を受ける前
          >にコードが完成してしまうというのはあるかもしれません。ちょっと違うかもしれませんが、それなりの規模のソフトウェア
          >と同じようにUMLつかって設計した場合、コードを書き始める前にタイムリミットを迎える恐れもあるかもしれません。

          余談。いつも思うのだが、OOの恩恵って、そういうようなもののことを指すんだろうか?という疑問が。

          「そういうこと」ってのは、UMLとかなんとかでObject指向ならぬClass指向な開発を行うこと。

          なにも、「クラスを」「設計する」ことが、Object指向だというわけではないので。
          ちょっと違うが(でもRADという意味では似ているはずだが)、GUI RADなんかも「Object指向の」恩恵の1つなわけで、
          ガチガチの設計というものがOOに不可欠か?と問われれば、NOと答えておくほうが妥当だと思う。

          ま、関数型とOOPとって、ちょっと油断してると「どっちがPrimitiveか」論争になっちゃったりするし(^^;、
          両者を最初から兼ね備えた(=自分でOOP環境を作らずに済む(笑))言語で仕事が楽になることも多いだろうし、なのだけど。

          本当に余談:
          Class指向(をObject指向と混同すること)が広まってしまったのは、やっぱりC++(でOOPが刷り込まれてしまった人々)のせいだろうなあ。
          親コメント
        • by Anonymous Coward
          あのぉ,OCaml は objective なのでは...
          • by Anonymous Coward
            でもOcamlでオブジェクト指向はほとんど使われない気がする。
            ほかのクラスの関数呼んだりするけど、あんまりOOPLを意識しないなあ。
        • by Anonymous Coward
          去年の(他人が書いた)コンテストの結果を仕様変更&拡張する
          なんていう課題だったらどの言語が優秀だろう?
    • Re:関数型言語が (スコア:2, すばらしい洞察)

      by Dentom (9064) on 2002年10月13日 16時08分 (#182790)
      うーん、いいとこ突いてますね。
      マイナーな言語を使うプログラマに、わりあい優秀な人が多かったりしますからね。
      メジャーな言語を使うからダメというわけでなく、そういうのは玉石混交で、
      石レベルに当たると目も当てられない。

      そういやC++なんかもマイナーなだったときは使う人は結構、優秀な人が多くて
      話聞いてるだけで、いろいろとタメになったんだけど、だんだん、なんじゃこいつ
      というのばっかり当たるんで、Javaプログラマの話を聞くようになったんだけど
      ところがこれもメジャーになりだすと以下省略。
      親コメント
      • by kn173205 (14800) on 2003年08月18日 22時21分 (#380865)
        それは学習能力の違いでしょうかね?
        マイナーで本等の情報が少ないときに仕様だけみてその言語をなんとか使いこなせる
        という学習能力の高さが優秀な人と言えるかもしれません
        十聞いて一わからない今日この頃・・・
        親コメント
    • Re:関数型言語が (スコア:1, すばらしい洞察)

      by Anonymous Coward on 2002年10月13日 12時52分 (#182763)
      ICFP(International Conference on Functional Programming)主催なので、参加者層が関数言語使いが多い、というのもあるのでは?
      親コメント
    • by Anonymous Coward
      恥ずかしながら Caml という言語は初耳でした. で,調べてみると,これは INRIA で開発されたものなんですね.
      分野は少し違いますが,INRIA は Scilab (http://www.scilab.org/)というシミュレーション用言語(いわゆるMATLABクローン)でも有名なところです. なかなか優秀な研究所のようですね.
  • MLの特徴 (スコア:2, 興味深い)

    by tkh (235) on 2002年10月13日 12時55分 (#182765) ホームページ 日記
    オブジェクト指向だなんだじゃなくて、MLの強力な型システムによるデバッグの容易さというのが非常に効いていると思います。C++でプログラムを組んだりしたら、デバッグにかかる時間が全然長くなってしまうと思います。
  • 対話型 だから時間制約があるコンテストで優秀だったんじゃないですか?

    #かつて、lisperだったころを思い出す。笑
    --
    -- kleenex
  • 手続きっぽくない言語がかって流行らなかった、
    「だって10倍以上遅いじゃん」という状況も
    今のCPU事情ならなんら問題にならない訳ですし、
    一寸づつHaskellとかPrologとか流行ると面白い
    ですねー。
    「関数型言語って、Cだってそうじゃん」という
    トーシローが一人でも少なくなりますように。
    (そりゃ俺か)
    --
    -----------------
    #そんなワタシはOS/2ユーザー:-)
  • by Anonymous Coward on 2002年10月15日 1時08分 (#183301)
    ICFPのサイト [brown.edu]見ると、 ICFPというのはInternational Conference on Functional Programmingの略で、 そもそも関数型プログラミングの国際会議みたいなんですけど……

    前提からして関数型言語が優勝するのは当たり前なのでは(^^;;

    # 自信が無いのでAC

  • by Anonymous Coward on 2002年10月15日 15時27分 (#183535)
    「O'Caml」って何て読むのでしょう?

    # 岡村さん何してはるんですか~?
typodupeerror

物事のやり方は一つではない -- Perlな人

読み込み中...