「まつもとゆきひろ『プログラミング言語Ruby』を大いに語る」に参加しました

こんにちは。那由多屋の加藤です。

昨日、ジュンク堂大阪本店で行われた出版記念トークイベント「まつもとゆきひろプログラミング言語Ruby』を大いに語る」に参加しました。

トークイベントの模様は、後ほどビデオが公開されるとのことです。

概要

トークセッションの流れ

プログラミング言語Ruby』に至るまで

  • 2000年1月『Rubyデスクトップリファレンス
    • すべての始まり
    • まつもとさんが一人で書いた本は、この本だけ
    • まつもと「表紙にはヒツジを希望したけれど、蓋を開けてみればヤギになっていた」
    • ポケットリファレンスにするには、分量が多すぎた
  • 2002年1月『Ruby in a Nutshell
    • Rubyデスクトップリファレンス』の英訳に、大幅に書き足したもの
    • まつもと「日本語から英語に翻訳される技術書は珍しいのでは」
  • Ruby In A Nutshell
    • 英語版『Ruby in a Nutshell』をフランス語に訳したもの
    • 日本には数冊しかないかも
    • ちなみに、ロシア語版は立ち消えとなった
  • 2008年1月『The Ruby Programming Language
    • David Flanaganとの共著
    • Ruby in a Nutshell』の面影は残っていない
    • Ruby 1.9.0リリースして間もない
  • 2009年1月『プログラミング言語Ruby
    • 『The Ruby Programming Language』を日本語化し、さらにRuby 1.9.1に対応する内容に
    • Ruby 1.9.1のNEWS(変更点が記述されているファイル)の60%くらいはカバーしている
    • 卜部「そこを変えると、本と違うんですけど・・・、というやり取りが何度か」
    • Ruby 1.9.1のリリース → Yuguiさんありがとう!

各章の紹介

  • 1章 イントロダクション
    • O'Reillyの本にしては珍しく、各章に挿絵がある
    • 挿絵は、why画伯による
  • 2章 Rubyプログラムの構造と実行
  • 3章 データ型とオブジェクト
    • 文字列型、M17Nについて詳しく書かれている
  • 4章 式と演算子
    • Rubyは、書けばだいたい思ったように動く
    • それを言葉で解説
  • 5章 文と制御構造
    • いわるく「文」はRubyでは少ない
    • この辺りから発展的
    • スレッド、継続、Fiberも出てくる
    • Fiberについて書かれたのは、この本が初めて
    • Rubyのスレッドは1本作ると1MBくらいメモリを消費してしまう
    • みんな、Erlang好きだよねw
    • Fiberは書きやすいけれど、マルチコアを活用しない
  • 6章 メソッド、proc、lambda、クロージャ
  • 7章 クラスとモジュール
  • 8章 リフレクションとメタプログラミング
    • ActiveRecordActiveSupportはちょっとやり過ぎな感じも
    • DHHに関して(後述)
    • DSLを作る時のリファレンスとして
  • 9章 Rubyプラットフォーム
  • 10章 Ruby環境

Ruby 1.9について

  • M17N(Multilingualization)について、いろいろ
    • 最初にコードを書いたのは2000年だけれど、2006年まで放置
    • 日本では、普段から複数のエンコーディングを使うため、ノウハウがある
    • 昔のRubyは、EUC、Shift-JIS、UTF-8のみをサポート
    • 今では83エンコーディング
    • Round-trip問題
    • CSI(Code Set Independent)を実現している言語は珍しい
  • 時間が来たため、終了

質疑応答

 質疑応答が1問だけ。と言うか、質問者は私ですw。

  • Q. 「まつもとさんが思うRuby 2.0とは?」
  • 現状には全然満足していないので、まだまだ色々やりたい
  • キーワード引数
    • 呼び出す側はだいぶ整備されているけれど、引数を受け取る側は整備されていない
  • ライブラリの整理
    • Ruby 1.8で増やしたのは私(まつもと)だけれど
    • gemとして切り出したい
  • 「$なんとか」を無くす
  • 特異クラスをシンプルに
    • 特異クラスを隠そうとした形跡が残っていたり
  • Selector Namespace

その他

  • 謎の人物_whyに関して
    • why the lucky stiffという名前で活動
    • 英語版Wikipediaにも項目があるけれど、本名不明(該当の項目
    • Syck、Hpricot、Shoesなど作品多数
    • Potionという言語も作っている
      • 小さい言語だけれど、JITが実装されている
    • プログラミング、音楽、絵画と多彩
    • 少々、飽きっぽい
  • DHH(David Heinemeier Hansson)に関して
    • 以前はPHPを使っていた
    • Ruby on Railsマーケティングは上手い
    • よく燃え上がらせるけれど、上手く燃え上がらせる
    • まつもと「ブレーキが壊れている」
  • まつもとさんは、まえがき作家
    • まつもとさんが前書きを書いた本は売れる!

その後

 トークセッションの後は、サイン会と懇親会。

 久しぶりにまつもとゆきひろさんとうささんに、そして初めて卜部さんにお会いできて嬉しかったです。もちろん、まつもとさん、卜部さんにサインを頂きました。