En Ruby existe un método para congelar un objeto de cualquier clase, haciendo así imposible que sea modificado por instrucciones posteriores. Claro que, tratándose de Ruby, cada clase puede redefinir su método freeze.

[miguev@Quoth Ruby]€ irb1.8 --simple-prompt
>> class ParanoicRobot
>>   def freeze
>>     puts "I'm not a fridge"
>>   end
>> end
=> nil
>> marvin = ParanoicRobot.new
=> #< paranoicrobot :0xb7c51b58 >
>> marvin.freeze
I'm not a fridge
=> nil