[#27417] selector namespace — Shugo Maeda <shugo@...>

前田です。

17 messages 2005/10/13

[#27458] Matrix class is broken without mathn — akira yamada / やまだあきら <akira@...>

Debianユーザからrequire "mathn"しないときに

28 messages 2005/10/19
[#27461] Re: Matrix class is broken without mathn — Yukihiro Matsumoto <matz@...> 2005/10/19

まつもと ゆきひろです

[#27596] Re: Matrix class is broken without mathn — Masahiro Sakai (酒井政裕) <sakai@...> 2005/10/31

酒井といいます。

[#27601] Re: Matrix class is broken without mathn — Yukihiro Matsumoto <matz@...> 2005/10/31

まつもと ゆきひろです

[#27605] Re: Matrix class is broken without mathn — keiju@... (石塚圭樹) 2005/10/31

けいじゅ@いしつかです.

[#27691] Re: Matrix class is broken without mathn — Shin-ichiro HARA <sinara@...> 2005/11/12

原です。

[#27700] Re: Matrix class is broken without mathn — keiju@... (石塚圭樹) 2005/11/14

けいじゅ@いしつかです.

[#27484] 1.8.4 feature freeze? — "URABE Shyouhei aka. mput" <root@...>

卜部です。

19 messages 2005/10/23
[#27485] Re: 1.8.4 feature freeze? — Yukihiro Matsumoto <matz@...> 2005/10/23

まつもと ゆきひろです

[#27492] Re: [ ruby-Bugs-2613 ] building ruby 1.8.3 on Solaris — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp>

山本です。

20 messages 2005/10/24
[#27493] Re: [ ruby-Bugs-2613 ] building ruby 1.8.3 on Solaris — Yukihiro Matsumoto <matz@...> 2005/10/24

まつもと ゆきひろです

[#27494] Re: [ ruby-Bugs-2613 ] building ruby 1.8.3 on Solaris — WATANABE Hirofumi <eban@...> 2005/10/24

わたなべです。

[#27495] Re: [ ruby-Bugs-2613 ] building ruby 1.8.3 on Solaris — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2005/10/24

山本です。

[#27503] Re: [ ruby-Bugs-2613 ] building ruby 1.8.3 on Solaris — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2005/10/25

山本です。

[#27504] Re: [ ruby-Bugs-2613 ] building ruby 1.8.3 on Solaris — "U.Nakamura" <usa@...> 2005/10/25

こんにちは、なかむら(う)です。

[#27505] Re: [ ruby-Bugs-2613 ] building ruby 1.8.3 on Solaris — nobuyoshi nakada <nobuyoshi.nakada@...> 2005/10/25

なかだです。

[#27551] 1.8.4 検証を(だれが|どのように)行うか — "URABE Shyouhei aka.mput" <root@...>

さて、 1.8.4-Preview1

41 messages 2005/10/28
[#27561] Re: 1.8.4 検証を(だれが|どのように)行うか — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2005/10/30

山本です。

[#27562] Re: 1.8.4 検証を(だれが�匹里茲Δ�)行うか — "URABE Shyouhei aka.mput" <root@...> 2005/10/30

卜部です。

[#27566] Re: 1.8.4 検証を(だれが|どのように)行うか — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2005/10/30

山本です。

[#27586] Re: 1.8.4 検証を(だれが|どのように)行うか — "U.Nakamura" <usa@...> 2005/10/31

こんにちは、なかむら(う)です。

[#27587] Re: 1.8.4 検証を(だれが|どのように)行うか — Yukihiro Matsumoto <matz@...> 2005/10/31

まつもと ゆきひろです

[ruby-dev:27436] Re: selector namespace

From: Shin-ichiro HARA <sinara@...>
Date: 2005-10-18 08:25:52 UTC
List: ruby-dev #27436
原です。

>なかだです。
>
>At Thu, 13 Oct 2005 17:40:46 +0900,
>Shin-ichiro HARA wrote in [ruby-dev:27423]:
>> >> a) 見える。zot(1)は bar$zot -> global$zot の順、zot(2)は
>> >>    baz$zot -> bar$zot -> global$zot の順で探す
>> >>
>> >> b) 見えない。zot(1)は global$zot だけ、zot(2)は baz$zot ->
>> >>    global$zot の順で探す
>> >>
>> >> c) スコープでusingが現れると外側のusingは見えなくなる。zot(1)は
>> >>    bar$zot -> global$zot の順、zot(2)は baz$zot -> global$zot
>> >>    の順で探す
>> 
>> >aが便利そうですね。
>> 
>> using が module ... end ぶち抜きで効果を持つのが、若干違和感があるなあ。
>
>b案のほうがよさそうということですか。

そうです。既存のスコープの概念とあまりにかけ離れるのはどうかと。
まったく垂直というのもありかもしれませんが。

>> どうせなら、もっと過激に def にも有効にして
>> 
>>   using foo
>>   def bar
>>     baz
>>   end
>> 
>> を
>> 
>>   def foo$bar
>>     baz
>>   end
>> 
>> 相当にするとか、
>
>そうすると、一度usingを使うとそのスコープではglobalなメソッドを
>定義できないということになりますが、それはどうなんでしょう。い
>や、global$barと定義すればいいのかな。

そうですね。これは引数無しの public/protected/private のイメージ
です。

>>   def bar
>>     foo$baz
>>   end
>> 
>> 相当にするということも考えられるけど、どうなんでしょ。
>
>全部自分でnamespaceを指定することになりそうな気がしますが、それ
>ではかえって不便のような。

確かにこれは不便ですよね。ただ、前者と後者を組み合わせたもの、
つまり、

  using foo
  def bar
    baz
  end

を

  def foo$bar
    foo$baz
  end

相当にするのはあり得るかもしれない。


ところで、そもそも selector namespace の必要性ってのは、どういう要請
によるものでしょうか。

ひとつの例としては jcode.rb は使い難いという話がありますね。
require しただけでスクリプト中の全ての String#tr の定義が変わって
しまうのがイヤだと。

他には、私としては、Integer#/ の定義を一時的に変えたいというのもあ
るんですが、つまり、

  using mathn
  rational_array = [1/2, 1/3, 1/4]

みたいな感じで有理数の配列が出来たらうれしいなと思ったりするんだけ
ど、これは守備範囲外ででしょうか。もっと局所的に、String#each を 
一瞬 String#each_byte にしたいとか。そういのは別の話なのかな。 


In This Thread