Of course `def M.foo; ...; end' is rejected since that's a method
definition on a frozen module, but Foo itself is still opened.
Yes, like all objects are open because you can write
f = Foo.new
class << foo
def foo
end
end
Guy Decoux