YAPC 1日目

良い天気だしキャンパスが気持ちよい。

  • miyagawa さんの英語が流暢。
  • Larry Wall ktkr お茶目だな。

Continuous Testing

  • Test::Continuous
  • ソースが変更されたら自動テスト
  • ポップアップで知らせる
    • これいいね。
    • Log::Dispatch らしい
    • Log::Dispath::MacGrowl
  • すべてのテストを実行するのは重いよね
    • .pm -> .t の依存関係
    • すべての依存関係を検知するのはむり(yamlとか)

Perl as a Second Language by 弾さん

  • なぜ外国語を学ぶべきか?
    • 何かやるには1つ以上の方法がある
    • 言語毎にどんなことにより注意を払っているか?の違いがある
      • 英語・日本語・中国語における「いとこ」の例
  • Perl と他の言語が似ている例
    • print "Hello, World!"; # python, ruby
      • Cと違っていうまでもないことは書く必要がない
    • Perl is like Scheme
      • Y-Combinator
  • Perl が他の言語と似ていない例
    • これが本題
    • Ruby と違ってすべてがオブジェクトとは限らない
    • 組み込みでオブジェクト指向の機能があるわけではない
      • だからこそ OO を学には Perl が一番
      • OO の実装方法そのものが分かるよ。
    • オブジェクトは?
      • 自分が何をするべきかを知っているデータ。
    • Perl におけるオブジェクトのおさらい
    • Inside-out object
    • Moose
      • へぇ。こんなことできるんだ。
    • 文字列に対する + 演算子
      • Perl is a context-oriented language(文脈指向言語)
      • "1" + "1"; =>2 # numeric context
      • "1" . "1"; => # string context
      • Perl は空気を読む
    • まとめ
      • Perl は全員のため。Perlユーザーのためだけのものではない
      • Perl があなたを嫌うということはありません
      • Perl を使ってみましょう
感想

同じことは Scheme にもあてはまると思うので、Scheme もおすすめですよ。
あ、そろそろ電池が切れる。

Parrot Compiler Tools by Hiramatsu さん

Parrot

Parrot の話はかなり面白かった。