From: "池田 孝志" Date: 2003-09-02T02:15:38+09:00 Subject: [ruby-list:38333] Re: シュールな名前 池田です。 Yuji Asakawaさんは書きました: > 浅川です。 > > 初心者に、 Ruby を理解してもらうために、どう説明するべきか。有意義で > 興味深い話題ですね。 僕も、誰でも分かるような文言というものには非常に興味がありました。 が、人それぞれ考え方が違うので近ごろではこれは無理だと感じています。 > > 「見えないのをいいことに、初心者に嘘教えるなよ」と > > (口悪く言えば)言えてしまうんじゃないかな。 > > 初心者に物を教える時には、興味を持続させるために、騙し賺して判った気 > にさせる、ということも必要な場合があると思いますし、この場合は、それに > あたると思うのです。 初心者(というかRubyを触ったことのない人)にすれば Rubyが海とも山ともつかないし、とっかかりがあるだけでも ものすごい助けになっていると思う。 いわば、「変数+オブジェクトID(矢印でもいいと思う)+オブジェクト」が 分かっていれば、 a = "x" b = a a.sub!(/./, "y") p b # ==> "y" というところを初心者が(b == "x")と間違えないかというと、保証もないし、 間違えるたびに、「ああ、これってVBじゃなくてRubyだったな」と 思い返すことになるだろうけど、理解にすぐにつながることを期待できないのは 現実あると思います。 人間の頭もコンピュータのようになってるとはいえ、(VBやってる人にすれば) 上のような動作がこの世にあるってことを頭に書き込んだり、 別の変数をいじっただけでもう一方の変数も値が変わるという風に 頭を書き換えたりするための時間がハードディスクよりいるし、 書き変わらなかったら(残酷だ...)、まあそれでもいいかという感もあります。 統一的理解だけで何でも済ますより、ニュートン力学を学んでから、 「実は重さも変わります、時間も狂うよ」とか驚かせるのもありと思います。 箱モデルにしても、2つの箱に同じものが入っているとかは量子力学では当たり前 の話だし、あたりまえのことなんでしょう、その筋の方々には!(笑) ああ、逆に物理学部でRubyの講義するんだったら絶対箱モデルっていいかもしれない(笑) -- 池田孝志