From: 6ftdan@... Date: 2015-12-17T01:01:04+00:00 Subject: [ruby-core:72196] [Ruby trunk - Bug #11828] [Open] Object#freeze grid-locks Ruby Issue #11828 has been reported by Daniel P. Clark. ---------------------------------------- Bug #11828: Object#freeze grid-locks Ruby https://bugs.ruby-lang.org/issues/11828 * Author: Daniel P. Clark * Status: Open * Priority: Normal * Assignee: * ruby -v: * Backport: 2.0.0: UNKNOWN, 2.1: UNKNOWN, 2.2: UNKNOWN ---------------------------------------- It seems safe to freeze most any class type in Ruby. But if you call `Object.freeze` nothing from then on can be created in either class of method form. Is this okay behavior to have in Ruby? ~~~ruby Object.freeze class A end # => RuntimeError: can't modify frozen # def x end # => RuntimeError: can't modify frozen class ~~~ I noticed that Procs can still be defined. ~~~ruby prc = proc {|a| a+1} prc.call(4) # => 5 ~~~ But all singleton instances are frozen. -- https://bugs.ruby-lang.org/