At the top level in Ruby, self is an anonymous Object, but ruby_class  
is set to Object.

Is the execution environment of a Ruby program therefore something like:

class Object
   Object.new.instance_eval do
     def self.to_s
       "main"
     end

     ##
     # Your program gets inserted here...
     ##

   end
end



Cheers


Dave