Rubyならできると思ったんだけど。
class Sample; end
class << Sample
def initialize; end
end
# Sample.singleton_class.new でも同じ
(class << Sample; self; end).new
# これでももちろんだめ
Sample.singleton_class.class_eval do |obj|
obj.new
end
can't create instance of singleton class (TypeError)
でエラー。頑張ったら相応のことはいけそうな気がするけど。
Note) ちなみにシングルトンクラスのサブクラスも作れない。仮に、サブクラスを作れるとしたら、そのクラスがシングルトンクラスかどうか見分けがつかず、インスタンスを作成することができてしまい、矛盾を発生してしまうからかも。
class Sample; end
Class.new(Sample.singleton_class) # can't make subclass of singleton class (TypeError)