2008年4月13日日曜日

Chapter 4 Containers, Blocks, and Iterators


  • う〜ん。yeildやlambdaやProcを、よくできた仕組みと思うか、関数型言語の方がわかりやすい、と思うか。

Chapter 3 Classes, Objects, and Variables


  • rubyでは、classの定義がひとところでなくてもよい。
  • methodは実行時に探して決定する。(ちょっとCLOSっぽい)
  • superは、親のmethodを呼ぶ。
  • accessorを書かずにslotに外からアクセスするにはどうするんだろう?

2008年3月31日月曜日

Chapter 2 Ruby.new

Objectsから始めるのはきつかろう。コードは外部表現にすぎないから、Reader周辺の導入が先に必要ってことかと。

と思ったら、それをやらずにボキャブラリーを導入するのか。

Class, object, instance, constructor, object identifier, instance variables, instance methods, receiver.

puts(say_goodnight("John-Boy"))

がmethod呼び出しだとして、receiverは何なのだろう?

nilはan objectなんだ。

blockは||を使って、lambda listを指定できて、そのblockを受けとったmethodの中でyieldにて呼び出せる。

以上

Chapter 1 Getting Started


$ ruby -v
ruby 1.8.6 (2007-09-24 patchlevel 111) [universal-darwin9.0]


riって便利だ。

以上

読む目的

Common Lispをそれなりにマスターするまでは他の言語はやるまい、と考えていたのですが、仕事の都合でRubyを扱わなければならなくなりました。昔かじっただけなので、ひととおり確認したいと思います。