[#8168] {literal}#[]= — EGUCHI Osamu <eguchi@...>

えぐち@エスアンドイーです。

16 messages 1999/11/01
[#8172] Re: {literal}#[]= — matz@... (Yukihiro Matsumoto) 1999/11/01

まつもと ゆきひろです

[#8176] Multiple self assignment — Kazuhiro Yoshida <moriq.kazuhiro@...>

もりきゅうです。

35 messages 1999/11/01
[#8178] Re: Multiple self assignment — matz@... (Yukihiro Matsumoto) 1999/11/01

まつもと ゆきひろです

[#8212] Re: Multiple self assignment — Kazuhiro Yoshida <moriq.kazuhiro@...> 1999/11/02

もりきゅうです。

[#8213] Re: Multiple self assignment — matz@... (Yukihiro Matsumoto) 1999/11/03

まつもと ゆきひろです

[#8232] 例外を処理する 2 項演算子 — Kazunori NISHI <kazunori@...> 1999/11/05

西@九大です。

[#8233] Re: 例外を処理する 2 項演算子 — matz@... (Yukihiro Matsumoto) 1999/11/05

まつもと ゆきひろです

[#8236] Re: 例外を処理する 2 項演算子 — Kazuhiro Yoshida <moriq.kazuhiro@...> 1999/11/05

もりきゅうです。

[#8266] Re: 例外を処理する 2 項演算子 — EGUCHI Osamu <eguchi@...> 1999/11/07

えぐち@エスアンドイー です。

[#8269] Re: 例外を処理する 2 項演算子 — gotoken@... (GOTO Kentaro) 1999/11/07

In message "[ruby-dev:8266] Re: 例外を処理する 2 項演算子"

[#8271] Re: 例外を処理する 2 項演算子 — matz@... (Yukihiro Matsumoto) 1999/11/08

まつもと ゆきひろです

[#8274] Re: 例外を処理する 2 項演算子 — keiju@... (石塚圭樹) 1999/11/08

けいじゅ@日本ラショナルソフトウェアです.

[#8204] Re: [ruby-list:18281] Re: アクセス制御について — Shugo Maeda <shugo@...>

前田です。

12 messages 1999/11/02
[#8205] Re: [ruby-list:18281] Re: アクセス制御について — Shin-ichiro Hara <sinara@...> 1999/11/02

原です。

[#8315] Re: [ruby-list:18601] Re: [REQ] [].grep(pat){} ==> [].grep(pat).collect{} — Kazunori NISHI <kazunori@...>

西@九大です。

37 messages 1999/11/15
[#8316] Re: [ruby-list:18601] Re: [REQ] [].grep(pat){} ==> [].grep(pat).collect{} — matz@... (Yukihiro Matsumoto) 1999/11/15

まつもと ゆきひろです

[#8369] Re: [REQ] [].grep(pat){} ==> [].grep(pat).collect{} — Koji Arai <JCA02266@...> 1999/11/18

新井です。

[#8374] Re: [REQ] [].grep(pat){} ==> [].grep(pat).collect{} — matz@... (Yukihiro Matsumoto) 1999/11/18

まつもと ゆきひろです

[#8384] Re: [REQ] [].grep(pat){} ==> [].grep(pat).collect{} — Koji Arai <JCA02266@...> 1999/11/19

新井です。

[#8405] 1.4.3 (Re: Re: [REQ] [].grep(pat){} ==> [].grep(pat).collect{}) — matz@... (Yukihiro Matsumoto) 1999/11/24

[#8319] Re: Exception handling — Jun Adachi <adachi@...>

安達@沖データと申します。

21 messages 1999/11/16
[#8350] Re: Exception handling — Kazunori NISHI <kazunori@...> 1999/11/17

西@九大です。

[#8446] [REQ] {enumerable, integer, range}.rand — Kazunori NISHI <kazunori@...>

西@九大です。

37 messages 1999/11/29
[#8449] Re: [REQ] {enumerable, integer, range}.rand — matz@... (Yukihiro Matsumoto) 1999/11/30

まつもと ゆきひろです

[#8463] Re: [REQ] {enumerable, integer, range}.rand — Kazunori NISHI <kazunori@...> 1999/11/30

西@九大です。

[#8474] Re: [REQ] {enumerable, integer, range}.rand — matz@... (Yukihiro Matsumoto) 1999/12/01

まつもと ゆきひろです

[#8476] Re: [REQ] {enumerable, integer, range}.rand — Kazunori NISHI <kazunori@...> 1999/12/01

西@九大です。

[#8487] Re: [REQ] {enumerable, integer, range}.rand — matz@... (Yukihiro Matsumoto) 1999/12/02

まつもと ゆきひろです

[#8494] Re: [REQ] {enumerable, integer, range}.rand — Kazunori NISHI <kazunori@...> 1999/12/02

西@九大です。

[#8451] new Hash (Re: [ruby-list:19043]) — Wakou Aoyama <wakou@...>

青山です。

18 messages 1999/11/30

[ruby-dev:8254] Re: クラス変数 ??

From: matz@... (Yukihiro Matsumoto)
Date: 1999-11-05 08:05:13 UTC
List: ruby-dev #8254
まつもと ゆきひろです

In message "[ruby-dev:8253] Re: クラス変数 ??"
    on 99/11/05, Kazuhiro HIWADA <hiwada@kuee.kyoto-u.ac.jp> writes:

|ひわだです。# Ruby本、楽しませていただいてます

そりは良かった。間違い多いのだけが心残りですが。

|クラス変数がほしい人は結構多そう…。それはそうと、西さんの説得力のある
|文章というのはけっこう楽しみだったり…。

私もです。:-)

|クラス定数が変数っぽくなりつつあるようなのが気になるところです。

私もです。

|僕の予想では
|
| * なんとクラス定数が継承しないクラス変数に!
| * 定数にしたければ (逆か)
|     constant :CVAR
| * 継承したかったら各自アクセスメソッドを用意
|     def Foo::cvar ; Foo::CVAR end
|     def Foo::cvar= ... ; Foo.module_eval ... end
|
|とかですが、継承させたいならこんなのはイヤですね(とほ)。「クラス変数」
|といわれると自然に継承されるものであってほしい気もしますが、どんなもん
|なんでしょう。「クラス変数は継承されるべきか否か」… (x_x;;;

うーん、継承させないで済むなら簡単なんですけどねえ。
あ、でも

|     def Foo::cvar ; Foo::CVAR end
|     def Foo::cvar= ... ; Foo.module_eval ... end

を自動的に行う class_attr とか面白いかも。

  class Module
    private
    def module_attr(name)
      name = name.id2name unless name.kind_of? String
      self.module_eval <<-END
          CV_#{name} = []
          class <<self
            def #{name}; CV_#{name}[0] end
            def #{name}=(val); CV_#{name}[0] = val end
          end
       END
    end
  end

  class Class
    private
    alias class_attr module_attr
  end

  class Foo
    class_attr :foo
  end

  Foo.foo = 5
  p Foo.foo

  class Bar<Foo
  end

  p Bar.foo

あ、できちゃった。
                                まつもと ゆきひろ /:|)

In This Thread