From: ts Date: 2002-11-20T00:35:31+09:00 Subject: Re: Need help dynamically creating classes. >>>>> "P" == Paul Gregory writes: P> defineClass("MyObject") do P> # Render some objects P> end P> a = MyObject.new P> a.render This is with ruby 1.7 pigeon% cat b.rb #!./ruby class SceneObject def initialize(&generate) @generate = generate end alias init initialize def render instance_eval(&@generate) end end def defineClass(name, &block) Object.const_set(name, Class.new(SceneObject)).instance_eval do define_method(:initialize) { init(&block) } end end defineClass("MyObject") do puts "render some object" end a = MyObject.new a.render pigeon% pigeon% b.rb render some object pigeon% Guy Decoux