[#600] A `File' is not a `IO'????? — clemens.hintze@...

17 messages 1999/08/10
[#602] Re: A `File' is not a `IO'????? — matz@... (Yukihiro Matsumoto) 1999/08/10

Hi,

[#679] Documentation about RD? — Clemens Hintze <c.hintze@...>

Hi,

78 messages 1999/08/17
[#680] Summary of discussion about RD (Re: Documentation about RD?) — Toshiro Kuwabara <toshirok@...3.so-net.ne.jp> 1999/08/18

=begin

[#683] Re: Summary of discussion about RD (Re: Documenta tion about RD?) — clemens.hintze@... 1999/08/18

On 18 Aug, Toshiro Kuwabara wrote:

[#686] Re: Summary of discussion about RD (Re: Documenta tion about RD?) — gotoken@... (GOTO Kentaro) 1999/08/18

Hi,

[#687] Re: Summary of discussion about RD (Re: Docum enta tion about RD?) — clemens.hintze@... 1999/08/18

On 18 Aug, GOTO Kentaro wrote:

[#693] Re: Summary of discussion about RD (Re: Docum enta tion about RD?) — Toshiro Kuwabara <toshirok@...3.so-net.ne.jp> 1999/08/18

Hi,

[#695] Re: Summary of discussion about RD (Re: Docum enta tion about RD?) — Clemens Hintze <c.hintze@...> 1999/08/18

On 19 Aug, Toshiro Kuwabara wrote:

[#697] Re: Summary of discussion about RD (Re: Docum enta tion about RD?) — Toshiro Kuwabara <toshirok@...3.so-net.ne.jp> 1999/08/19

Hi,

[#703] Re: Summary of discussion about RD (Re: Docum enta tion about RD?) — Clemens Hintze <c.hintze@...> 1999/08/19

On 19 Aug, Toshiro Kuwabara wrote:

[#706] Re: Summary of discussion about RD (Re: Docum enta tion about RD?) — Toshiro Kuwabara <toshirok@...3.so-net.ne.jp> 1999/08/19

Hi,

[#681] Re: Summary of discussion about RD (Re: Documentation about RD?) — gotoken@... (GOTO Kentaro) 1999/08/18

Hi,

[#682] Re: Summary of discussion about RD (Re: Documentation about RD?) — Toshiro Kuwabara <toshirok@...3.so-net.ne.jp> 1999/08/18

Hi,

[#684] Re: Summary of discussion about RD (Re: Documentation about RD?) — TAKAHASHI Masayoshi <maki@...> 1999/08/18

Hi Tosh and all,

[#685] Re: Summary of discussion about RD (Re: Documentation about RD?) — gotoken@... (GOTO Kentaro) 1999/08/18

Hi,

[#689] Re: Summary of discussion about RD (Re: Documentation about RD?) — Toshiro Kuwabara <toshirok@...3.so-net.ne.jp> 1999/08/18

Hi,

[#694] Re: Summary of discussion about RD (Re: Documentation about RD?) — matz@... (Yukihiro Matsumoto) 1999/08/18

Hi,

[#700] Re: Summary of discussion about RD (Re: Documentation about RD?) — Toshiro Kuwabara <toshirok@...3.so-net.ne.jp> 1999/08/19

Hi,

[#702] Re: Summary of discussion about RD (Re: Documentation about RD?) — matz@... (Yukihiro Matsumoto) 1999/08/19

Hi,

[#704] Re: Summary of discussion about RD (Re: Docum entation about RD?) — Clemens Hintze <c.hintze@...> 1999/08/19

On 19 Aug, Yukihiro Matsumoto wrote:

[#719] Re: Summary of discussion about RD (Re: Docum entation about RD?) — Toshiro Kuwabara <toshirok@...3.so-net.ne.jp> 1999/08/20

Hi,

[#720] Re: Summary of discussion about RD (Re: Docum entation about RD?) — clemens.hintze@... 1999/08/20

On 20 Aug, Toshiro Kuwabara wrote:

[#721] Re: Summary of discussion about RD (Re: Docum entation about RD?) — Toshiro Kuwabara <toshirok@...3.so-net.ne.jp> 1999/08/20

Hi,

[#722] Re: Summary of discussion about RD (Re: Docum entation about RD?) — clemens.hintze@... 1999/08/20

On 21 Aug, Toshiro Kuwabara wrote:

[#723] Re: Summary of discussion about RD (Re: Docum entation about RD?) — Toshiro Kuwabara <toshirok@...3.so-net.ne.jp> 1999/08/20

Hi,

[#737] RD with multi charset — Minero Aoki <aamine@...>

Hi, I'm Minero Aoki. This is my first mail in this mailling list.

26 messages 1999/08/22

[ruby-talk:00565] Re: Question concerning modules (1)

From: clemens.hintze@...
Date: 1999-08-06 08:30:30 UTC
List: ruby-talk #565
Hi,

I very appreciate your explanaitions. But I fear, I have not understand
it at whole. Sorry for my stupidity, but I only knows the Smalltalk OOP
system. And there I have only *one* Metaclass, that is class of all
classes.

But following your explanaition, there are many metaclasses in Ruby.
There seems to be a metaclass for Module, Class, Object, ...
denoted by your `()' signs. 

On  4 Aug, Kazuhiro HIWADA wrote:
> Hi,
> 

[...]
 
> Follow this chart, I'll express module object as Foo, and it's
> metaclass object as (Foo).  And in this article `-->' also denotes
> instance object --> class object relationship, as follows:
> 
>   aFoo  -->   Foo   -->    (Foo)
> instance   class-obj   metaclass-obj
> 

But where does (Foo) comes from? And how can I create the aFoo
instance? I would have to call a class' `new' method to create a
instance, but Modules have no `new' method.

[...]

>> >> # Aha! `Foo' contains the instance variable.
>> >
>> >Yes. But it's not instance variable of Foo's instance.

And again you are speaking from a instance of Foo. What do you
mean? How do I create instances of Foo? And why do I call the variable
an instance variable? If it is an instance variable, it should be only
accessible via Foo's instance, but not from Foo itself, isn't it?

>> 
>> Eh! That I don't fully understand! If it is not instance variable of
>> `Foo's instance, whose instance variable it is? :-////
> 
> In this case, objects are releted as follows:
> 
>   aFoo  -->  Foo -->  (Foo)
> instance   module   metaclass

And again: What is aFoo? What is the metaclass (Foo)? From where did it
come?

> 
> I ment that @ivar is not aFoo's variable, but Foo's variable.

Oops... Now @ivar (syntax denotes an instance variable) is not an
instance variable of Foo, but a variable????

> 
> NOTE: Foo.methods returns Foo's methods, and Foo.instance_methods
> returns aFoo's methods.

Okay! That is clear for me now. For methods, it seems to be like for
classes. Instance methods are methods for the instance. But instance
variables seems to be for the module, not for the instance?????

> 
>> >
>> >Cause foo's (singleton) class is extended by Foo, foo has the method `show'.
>> >

Okay! As I can only extend an object, instance methods would be useable
by the object.

[...]

> 
> By `foo.extend Foo', foo is extended to have Foo's instance methods as
> foo's methods, because now foo is an instance of Foo like aFoo.  This
> case is as follows:
> 
>           aFoo -->  Foo  --> (Foo)
> afoo  --> foo  --> (foo)

Ahh! By extending a module object, that module becomes a instance of
the module that extends it, right? That means:

	foo.extend foo

would let foo be an instance of itself, right? And here foo would 
also become a metaclass for itself?

[...]

> This is the limit of my ability.  If you need further help, matz or
> gotoken or shugo or ... will help us ;-p

It is a really complex thing. I very appreciate your help. Thank you!

[...]

\cle

In This Thread