RubyKaigi'08 SecondDay

今日は発表の日

今日はメインセッションにも顔を出した。

REST信者から見た Ruby on Rails 2.x

いつもお世話になっております

  • タイトル変わってた
    • リンクのコンテキストを表現させろ
    • Restletのルーティングいいよ
    • ハイパーメディアの設計
    • URIは実装結果ではなく、設計目標である
    • あ、URIは設計目標であり、実装結果ではない、だったかな。

で、多目的ホールへ戻る

Rubyで懐かしのゲームブックを作ってみよう!

  • ゲームブック懐かしいな
    • Lost World
  • 結局なんの発表だったんだ、でも懐かしい。

net-ircというモジュールの実装紹介

使ってみたいと思った

  • IRC軽くていいYo
  • DSL書くの難しいよ
    • 新しい言語を覚えるのが楽な状況って、推測可能ってことがとっても重要だよね。
    • srcAPI--
    • Rake++,RSpec++

Rubyプログラムの型推論

  • Ruby
    • 型なし
    • OO
      • duck typing
    • 動的
      • eval, send, define_method, lambda, method_missing, block_given?...
  • Typing Ruby Program
    • 明らかなNoMethodErrorとかの実行時エラーを防ぎたい
    • evalも引っ掛けたいよ
  • 型推論(Type Inference)
    • ML style
      • unificationを使ってやってく
      • 多層レコード型
      • OCaml/SMLと似たようなことをやってる
    • Flow解析は今回やらん
  • 実用的なの?
    • わからんが、そうでなると信じてる。

RubyGCをどげんかせんといかん

  • authorNari(NaClの人)
  • MRIをどうにかしたい
    • mark-and-sweepだけしか使ってないよ
    • プロセスのメモリサイズ肥大化
      • 1.9.0.2でパッチ当たったよ
    • stop the world
      • Lazy sweepでmarkの停止だけに
  • これから
    • BoehmGC入れてみる
    • thread localにしてみると、キャッシュが効くかも
    • incremental gc 難しい道だなあ