[#1026] Is this a bug? — Dave Thomas <Dave@...>

18 messages 2000/01/03

[#1084] Infinite loop — Dave Thomas <Dave@...>

17 messages 2000/01/11

[#1104] The value of while... — Dave Thomas <Dave@...>

24 messages 2000/01/11

[ruby-talk:01133] Re: Class variables...

From: David Suarez de Lis <excalibor@...>
Date: 2000-01-12 16:46:13 UTC
List: ruby-talk #1133
Hi there,

matz wrote:
> Ruby does not have the class variables (yet).
> 
> Typical idiom to share value among instances is:
> 
>  class Person
>     Population = [0]
>     def new(the_name = nil)
>         @name = the_name
>         Population[0] += 1
>     end
>  end

I thought Capital case identifiers were constants... Unless Population is a constant Array of 1 value, but the value inside the array is variable... ?

> |Also, I assume END {} allows us to put conditions for GC?
> |Like END { @Person::population -= 1 }
> 
> No, END is like at_exit(3) for C.
> For something to be processed at GC time, use finalizers.
> 
>   require 'final'
> 
>   ObjectSpace.define_finalizer(obj, proc)

I see, interesting although a bit complicated (according with \cle's examples...) does this add a new object to a program (or, better said, a new object per object we create)?
>
> will call proc on GC.  Notice the proc should not point obj directly,
> or indirectly.  Ask \Cle. for more detail.  :-)

Thanks, nice work with the language,
d@
-------------------------------------------------------------
Mensaje enviado gracias al correo gratuito de Demasiado Corp.
[http://correo.demasiado.com]
-------------------------------------------------------------

			   

In This Thread

Prev Next