From: David Suarez de Lis Date: 2000-01-12T04:42:14-05:00 Subject: [ruby-talk:01128] Re: The value of while... Hi all, Dave (at 3am) wrote: > Thinking again about class definitions returning a value, I wonder how > many people would find the concept of Class and meta-classes more > obvious if the syntax were > > Dave = Class.new { > } > > rather than > > class Dave > end Sound pretty interesting! > That way, the body of the class definition is clearly a set of > executable statements that manufacture a new Class object, rather than > just a passive declaration. It would also help explain why 'attr' is a > method in Module, not part of the syntax. > > If a class definition returned a value, not just void, we could teach > it this way. This kind of abstraction would also allow things like: person = Class.new { new = Method.new {|a_name| @name = a_name} talk = Method.new {|what| print what, "\n"} walk = Method.new { |direction, time| .... } } john = Person.new("John") .... I may be a long way off the hook, but having Procs this looks a neat way of defining things, pretty cool that we can have contextual local variables into the closures... > Dave > > > (if this makes no sense, please forgive me - it's 3am and I'm typing > one-handed with a teething baby on my shoulder!) Ouch... hope things get better soon... laters, d@ ------------------------------------------------------------- Mensaje enviado gracias al correo gratuito de Demasiado Corp. [http://correo.demasiado.com] -------------------------------------------------------------