タグ

ブックマーク / blog.yugui.jp (9)

  • 東京Ruby会議01で話した - 世界線航跡蔵

    発表は慣れてきたかな。別に緊張はしなかった。 にも関わらず、発表は酷い出来だった。幾つか使えるネタはあったのにアドリブも効かせられなかったし、話の抑揚もね。何の言い訳にもならんけど、の具合が悪くてさー。会場に行く途中でも電車に飛び込みたい気分で一杯だったけれども、雷雨と人身事故であちこち既にダイヤが狂っていて乗客が殺気立っていたので自重した。 つまんない発表で、聞いてくださった方には当にごめんなさい。 Ruby 1.9.1への道 from Yuki Sonoda

    東京Ruby会議01で話した - 世界線航跡蔵
  • Rubyの呼び出し可能オブジェクトの比較(1) - 世界線航跡蔵

    Rubyにはコード片を表すオブジェクトが複数ある。 Method , UnboundMethod , Proc である。 Continuation は少し違うけど、実行コンテキストを記憶しているオブジェクトという意味では近いものがあるか。『 Ruby Way 』にはこういういろいろがあることについて「驚くほどのことではありません」と書いてあるけれども私は驚いた。で、これらが微妙に違うのだ。困ったもんだ。いや、便利なのかもしれないが。 それで今回はこれらの概要を眺めてみたいと思う。 普通のメソッド defでメソッドを定義するのが一番普通だやな。 class C def greeting(arg) puts "C#greeting reveived #{arg}" end def iterator yield 'iterator 1st' yield 'iterator 2nd' yield

    Rubyの呼び出し可能オブジェクトの比較(1) - 世界線航跡蔵
    hchbaw
    hchbaw 2008/06/19
  • Rubyのメタクラス階層 - 世界線航跡蔵

    この記事は、先日開催した 第3回 RHGの逆襲 のまとめみたいなものである。と、同時に『初めてのRuby(仮題)』の宣伝である。 クラス、その例外、そのトリック Rubyはクラスベースのオブジェクト指向だから、メソッドの情報はクラスに属している。インスタンスメソッドを呼び出すときには、そのオブジェクトの属するクラスを調べて、そのクラスの持っているインスタンスメソッドの中から探す。 でも、Rubyの場合は例外がある。1つはモジュール。モジュールはクラスではないのに、でもインスタンスメソッドを提供している。1つは特異メソッド。特異メソッドは特定のインスタンスに直接所属するメソッドだ。 でも、ここには実装上のトリックがある。Rubyにとってはモジュールのインスタンスメソッドも特異メソッドも、等しくクラスに属するインスタンスメソッドなんだな。 モジュール モジュールをクラスにincludeすると、

    hchbaw
    hchbaw 2008/04/14
  • Matzの本、そして宣伝、そして決意、抱負 - 世界線航跡蔵

    『 The Ruby Programming Language 』を読んだ。こいつは良いだ。副題の"Everything You Need To Know"っていうのは嘘じゃない。翻訳しようっていう話もちらほら聞こえる。当然、翻訳は出すべきだろう。 だが、このは決して簡単ではない。こいつは 『プログラミングPerl』 と相似だ。その言語の創始者自身が書いた。そして、初心者が中級者になるために、最後に読むべきはこれだ。けれども、その言語の流儀を全く知らない、チュートリアルすらやってない入門者は、このでは挫折する。 Ruby Inside も、こう書いてる。 The only downside, in terms of the thousands who might be browsing Amazon looking for a single Ruby book to start o

    Matzの本、そして宣伝、そして決意、抱負 - 世界線航跡蔵
    hchbaw
    hchbaw 2008/03/12
  • Rails勉強会@東京 第27回 - 世界線航跡蔵

    Rails勉強会@東京 第27回 に行ってきた。今回は伊藤忠テクノソリューションズさんの会議室を借りて開催。形式はいつものごとく、オープンスペースを前後半2回に分けて開催。 前半 前半セッションでは、私が今書いているRuby入門書のダメ出しをやった。 細かいところは公開できないのだけれども、書籍の構成や技術的な表現について、執筆経験豊富なメンバーからいろいろな意見を頂いた。 技術書の出版技法について 某オーム社では Subversionで原稿を管理してる そうな。これはちょっと前に話題になったね。 私の場合は、原稿はRDで書いてる。 出版社側に出すのは独自の簡易マークアップ言語なので、 rdtool をつかってトランスレータを作成した。 書きながら分量を知りたいので自分でそれっぽいPDFを作成している。 rd2latex をベースにカスタマイズしたトランスレータでRD→LaTeXPDF

    Rails勉強会@東京 第27回 - 世界線航跡蔵
    hchbaw
    hchbaw 2008/02/19
  • ファーストクラスオブジェクトとしてのメソッド - 世界線航跡蔵

    Rubyと高階関数 : 関数そのものがファーストクラスではない やー、Rubyのメソッドはファーストクラスですよ。返り値にできて、変数に格納して演算できて、引数にできるという意味では。 確かに、RubyPythonJavaScriptやSchemeに比べると高階関数を陽に使うプログラミング *1 は不格好になる。Pythonなら簡単なのに、 bound_function = obj.hoge bound_function(arg1, arg2, arg3) Rubyは余計なメソッド呼び出しがくっついて不格好だ。 method = obj.method(:hoge) method.call(arg1, arg2, arg3) 私もこの点が気にくわなくてまつもとさんに「メソッドがファーストクラスだったらいいのに」と言ったことがある。でも、まつもとさんの考えではすでにファーストクラスというこ

    ファーストクラスオブジェクトとしてのメソッド - 世界線航跡蔵
    hchbaw
    hchbaw 2008/01/15
  • Ruby 1.9.0リリース - 世界線航跡蔵

    Ruby 1.9.0がリリースされました。恒例のクリスマスリリースです。開発者のみなさん、お疲れ様でした。 予定では安定版1.9.1がリリースされる予定でしたが、どうも安定版と言うには不安が残るということでバージョン番号を1.9.0に変更してリリースされました。位置づけとしては「1.9系統の新機能を一通り実装し終わったスナップショット」に近い様子です。 「スナップショット」と言うとテストを通すべく、バグつぶしに尽力してくださった皆様に対してあまりにも失礼かもしれません。でも、「スナップショット」以上「開発的安定版」未満、という感じです。 1.8.0のときはPreview Releaseして、それでも文句が出たのに今回はPreview Releaseなし。しかもリリース予定時刻になってもコミットが続いているっていうのがすごいね。 個人的な勝手な予想としては6月のRubyKaigiの前後までに

    Ruby 1.9.0リリース - 世界線航跡蔵
    hchbaw
    hchbaw 2007/12/26
  • Ruby入門書と、Dave Thomasと。 - 世界線航跡蔵

    今、ご縁があってRubyの入門書を書かせていただいてる。そして、分かってはいたけど説明することは難しい。 そんな中、Dave Thomasの ピッケル第3版 のベータが公開された。上手い。流れるように文が連なっていく。学習しようとしている読者の思考を妨げない。私の文はそれに比べるとたどたどしい。 こんなこともあった。私も最初章立てを、できるだけ類書を見ないように試行錯誤した。でも、書いてみると結局内容的にその章立ては不適切であることが判明した。その上で内容と文章を再配分してみると、どうやらピッケルの構成に比較的近くなりそうだ。 達人プログラマーの実力を見せつけられた感じだけど、でも白旗は揚げない。これで挑戦する気持ちすらなくしたら完敗だもの。Dave Thomasよりも、少なくともこちらのが想定する読者層 *1 にとっては分かりやすい、そんなを書きたいと思う。 *1:ターゲットとカ

    Ruby入門書と、Dave Thomasと。 - 世界線航跡蔵
  • Javaと中二病 - 世界線航跡蔵

    java.lang.だのjava.io.みたいな古いAPIは「これからオブジェクト指向な新しい世界が始まる」と気負いすぎている割にマーカーインターフェースとか痛々しいことをやっていたりする。その辺は『 Effective Java 』で、中の人自身が「あちゃー。いたた」と反省を述べている。というわけで、このJavaAPI設計における良書でもあるわけだ。 この痛々しいAPIを「 中二病 的インターフェース」と呼ぶならば、その後に台頭した"えんたーぷらいず"な重厚長大APIはさしずめ「 高二病 的インターフェース」だろうか。 昨今のSeasarの活動で成し遂げられ、また羽生さんが「これからようやくJavaが始まる」と言っているのはこのような多重に痛々しい過去を受け入れ、乗り越えてJavaが成人するということなのかもしれない。でも、乗り越えそこなうと「 大二病 」への道なので気をつけよう。

    Javaと中二病 - 世界線航跡蔵
    hchbaw
    hchbaw 2007/11/15
  • 1