立石です。

keiju> >taru> 文字列を与えてクラスのインスタンスを作れませんか?
keiju> >taru> 
keiju> >taru> Javaで書くと以下みたいな感じです。
keiju> >taru> 
keiju> >taru> Class clazz = Class.forName("NewClass");
keiju> >taru> Object obj = clazz.newInstance();
keiju> >
keiju> >一応、 String -> Class -> Object を満たすなら、、、
keiju> >
keiju> >clazz = eval("NewClass")
keiju> >obj = clazz.new
keiju> 
keiju> clazz = eval("class NewClass; end")
keiju> obj = clazz.new
keiju> 
keiju> ですね.

そうですね。今keijuさんのメール読んで気づきました。(^^;

keiju> Rubyの場合クラスの名前 == クラス定数名 なので適当なクラス定数に代入す
keiju> ることによってクラス名をつけることができます.
keiju> 
keiju> NewClass = Class.new
keiju> obj = class.new
keiju> 
keiju> ただ, これだと文字列でクラス名を設定したことになりませんので:
keiju> 
keiju> Object.const_set("NewClass", Class.new)
keiju> obj = NewClass.new
keiju> 
keiju> って感じかな... 

なるほど、Class.newまでは思いついたのですが、
「あ、名前がないや」と思い考えるの止めてしまいました。
Class.new(<super-class>,<class-name>)
みたいな記述も可能だと良かったりしませんか?

			Takaaki Tateishi <ttate / jaist.ac.jp>