rubyで動的にクラス名を使いたいときはObject.const_getつかうらしい
perlで動的にクラス名を決めたいときはこんな感じに突っ込んで呼び出してやるといけるんですけど、
use strict; use warnings; package Hoge; sub hello { print "hello\n"; } package main; my $str = "Hoge"; $str->hello();
これ、rubyで同じことやろうとすると、ruby的にはこの$strは文字列なのでそんなメソッドありませんよというエラーがかえってくるのでしょうが無いからしらべたらObject.const_getを使えばいいということだったのでメモしておく。(ググり方が悪かったのか、メタプログラミング ruby Classとかやっても最初でてこなかった)
class Hoge def hello puts "hello" end end str = "Hoge" Object.const_get(str).new.hello
http://www.ruby-doc.org/core-2.0/Module.html#method-i-const_get