From: Robert Klemme Date: 2005-10-21T20:06:59+09:00 Subject: Re: define_class and get_class Mushtaq Ahmed wrote: > Methods can be defined and called dynamically using define_method and > send/method respectively. Shouldn't there be similar alternatives for > class creation and invocation? Maybe like this: > > name = "A" > define_class(name) do > def say_hi > p "hi" > end > . > . > end > get_class(name).new.say_hi > > > I would like the above syntax better than the current way of doing it. > > name = "A" > eval "class #{name}; end" > klass = Object.const_get(name) > klass.class_eval do > def say_hi > p "hi" > end > . > . > end > klass.new.say_hi > > -Mushtaq cl = Class.new do def say_hi() puts "hi!" end end >> cl.new.say_hi hi! => nil >> cl.name => "" >> A=cl => A >> cl.name => "A" Does that help? Kind regards robert