Is there a historical reason why I can't do something like these:

x = String
class x; end

or

def x; String; end
class x(); end

or any other combination of an arbitrary syntactic construct that might 
produce a class? Was it done to simplify parsing or evaluation of classes?

The reason I ask is for something in JRuby. In JRuby we can refer to 
Java classes using a long-hand syntax:

java.lang.System

which basically calls methods java and lang to get "Package" objects, 
and a System method to get a proxy class for the Java type. But with 
this, we can't do:

class java.lang.System; end

to re-open the proxy class and add utility methods.

- Charlie