From: takagi@... (TAKAGI, Hiromitsu) Date: 1999-04-09T02:48:17+09:00 Subject: [ruby-list:13514] Re: constant/immutable(Re: Ruby and LISP) Shugo Maeda writes: > > Java Reportの内容はおそらく、 > > Stirng s1 = "Foo"; > > String s2 = "Foo"; > > System.out.println(s1 == s2); > > が true になること、そして、 > > String s1 = "Hello World"; > > String s2 = "Hello" + " World"; > > System.out.println(s1 == s2); > > も true になることを言っていたのでしょう。 > > (注: s1 == s2 は、Rubyでは s1.equal?(s2) のこと) > > なるほど。 > # とすると岩谷氏はどこをどう読んで上記のような結論に至ったのだろ > # う...。 Java Reportの元記事のタイトルが「Effective Java」であるあたりからして、 while (...) { s += foo(); } は、 StringBuffer sb = new StringBuffer(); while (...) { sb.append(foo()); } s = sb.toString(); とした方が速いよ という話だったんではないですかね。 ...検索中... 元記事を発見! http://archive.javareport.com/9902/html/from_pages/ftp_col.shtml んーやはりそんな感じ。元記事に誤りはなさそうです。 それにしてもいったいどう読み違えたのだか。 参照記事に書かれていた内容なのか自分の主張なのかが明確に区別されていな い時点で、既に物書きとして失格。 しかし、その岩谷氏というのは初めて知りましたが、冒頭もひどいですね。 | 最上位のスコープ概念はpackageで…名前空間の定義/管理のための機能 | としては弱い。…衝突の可能性はゼロにならない なんて書かれてますが、ClassLoaderちゅうもんを知らないらしい。 しかも、 | Sunが訴訟まで起こしたMicrosoftによる"非標準的実装"も、この名前空間の | 問題が適切に解決できれば認められてしまうのではないでしょうか。というよ | り、名前空間の定義と管理機能がJavaに存在すればこのようなライセンス条項 | すら要らない、ということになるのです。 とは、こりゃまた全く意味不明。 まあ、「rm -r」を知らずに「rm */*/*/*」とかしてる人(p.180) ですから しょうがないか…。 たかぎひろみつ