原です。

クラス変数の利用法の一つにパラメトライズド(パラメトリック)クラス
に使うというのがあると思いますが、 H.Fulton の "The Ruby Way" の
277-280 で議論されたように、あまり手軽ではありません。で、クラス変
数の仕様も固まってきたことだし、attr_* 相当の class_attr_* を作っ
たらどうでしょう。つまり

   class Foo
     class_attr_reader :foo

で、

    class Foo
      def self.foo
        class_eval("@@foo")
      end

を行うわけです。

class_eval("@@foo") でなくて単なる @@foo の方が素直かな。