[#2906] DLL for GNU Win32 — WATANABE Hirofumi <watanabe@...>
わたなべです.
5 messages
1997/05/06
[#2910] thread and fork — jkuro@... (Jun Kuroda)
黒田です。
15 messages
1997/05/07
[#2911] Re: thread and fork
— matz@... (Yukihiro Matsumoto)
1997/05/07
まつもと ゆきひろです.
[#2912] Re: thread and fork
— jkuro@... (Jun Kuroda)
1997/05/07
黒田です。
[#2913] Re: thread and fork
— matz@... (Yukihiro Matsumoto)
1997/05/07
まつもと ゆきひろです.
[#2914] Re: thread and fork
— jkuro@... (Jun Kuroda)
1997/05/07
黒田です。
[#3023] Re: thread and fork
— jkuro@... (Jun Kuroda)
1997/05/27
黒田です。
[#3025] Re: thread and fork
— matz@... (Yukihiro Matsumoto)
1997/05/28
まつもと ゆきひろです
[#2922] chap 1 draft #2 — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
7 messages
1997/05/09
[#2936] How to create ext — Eiji-usagi-MATSUmoto <ematsu@...>
うさぎです。
8 messages
1997/05/13
[#2938] Re: How to create ext
— matz@... (Yukihiro Matsumoto)
1997/05/13
まつもと ゆきひろです.
[#2952] [BUG] Dir.glob — sinara@...
原です。おひさしぶりです。
6 messages
1997/05/16
[#2960] dl-malloc — jkuro@... (Jun Kuroda)
黒田です。
9 messages
1997/05/19
[#2978] Re: [s-lang:00052] Re: Python/Ruby Jed — MAEDA Shugo <shugo@...>
前田です。
6 messages
1997/05/20
[#3005] Matrix — MAEDA Shugo <shugo@...>
前田です。
13 messages
1997/05/22
[#3006] Re: Matrix
— matz@... (Yukihiro Matsumoto)
1997/05/22
まつもと ゆきひろです
[#3026] ruby 1.0-970528 released — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
9 messages
1997/05/28
[#3027] Re: ruby 1.0-970528 released
— MAEDA Shugo <shugo@...>
1997/05/28
前田です。
[#3031] Re: ruby 1.0-970528 released
— matz@... (Yukihiro Matsumoto)
1997/05/29
まつもと ゆきひろです
[#3028] Can I use non IO object for $stdout? — MAEDA Shugo <shugo@...>
前田です。
7 messages
1997/05/28
[#3030] Re: Can I use non IO object for $stdout?
— matz@... (Yukihiro Matsumoto)
1997/05/29
まつもと ゆきひろです
[#3050] flock (BSD/OS 2.0 i386) — gotoken@... (GOTO Kentaro)
後藤です。
6 messages
1997/05/30
[#3055] ruby 1.0-970530 released — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
5 messages
1997/05/30
[ruby-list:3002] Re: access to instance variable
From:
matz@... (Yukihiro Matsumoto)
Date:
1997-05-22 05:40:54 UTC
List:
ruby-list #3002
まつもと ゆきひろです
In message "[ruby-list:3001] Re: access to instance variable"
on 97/05/22, toyofuku@juice.or.jp <toyofuku@juice.or.jp> writes:
| 豊福@パパイヤです。
| @tabstop = @default_tabstop の方はエラーにはならないの
|ですが、このときの右辺の @default_tabstop は何を見ている
|のでしょう。
メソッドと違いインスタンス変数は初期化されていなくてもエラー
にならないからです.@default_tabstopはBufferのインスタンスの
初期化されないインスタンス変数(値はnil)を参照しています.
| ではこれならどうだ。
|
| class Buffer
| @default_tabstop = 8
| def Buffer.default_tabstop()
| @default_tabstop
| end
| def Buffer.default_tabstop=(n)
| @default_tabstop = n
| end
ここは
class Buffer
class << Buffer
attr :default_tabstop, TRUE
end
というわざがありますね.
# 新しい概念を出して混乱させているような….
| バッファローカル変数っぽく書くのはこれでいいんでしょうか。
そうですね.でもこれだとBufferのサブクラスとは値が共有されま
せんから,バッファローカル変数のデフォルト値を格納するテーブ
ルを持つのが良いのでは.
class Buffer
DEFAULT_VALUES = {}
DEFAULT_VALUES["tabstop"] = 8
def initialize
@tabstop = DEFAULT_VALUES["tabstop"]
end
end
あるいはバッファローカル変数をインスタンス変数で実装すること
そのものを避けてしまって,
class Buffer
DEFAULT_PROPS = {}
DEFAULT_PROPS["tabstop"] = 8
def property(name)
if @property and @property.key? name
@property[name]
else
DEFAULT_PROPS[name]
end
end
def set_property(name, value)
@property = {} unless @property
@property[name] = value
end
end
なんてのはどうでしょう.
buf = Buffer.new
buf.property("tabstop")
buf.set_property("tabstop", 4)
という感じで使うんですけど.
まつもと ゆきひろ /:|)