Ruby is a dynamic language. Everything is possible in runtime. So, how about a feature to prohibit some dynamic features in runtime? Foo = 1 RubyVM.drop_dynamics Bar = 2 #=> cannot define new constant Foo = 2 #=> cannot redefine a constant def foo; end #=> cannot define a method class Baz; end #=> cannot create a new class Ruby's dynamic property greatly restricts performance. However, it is a bad