Final in ruby

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