Qual é a diferença entre os métodos dup e clone de Ruby?

oDocs Ruby paradup dizer:

Em geral,clone edup pode ter semânticas diferentes em classes descendentes. Enquantoclone é usado para duplicar um objeto, incluindo seu estado interno,dup normalmente usa a classe do objeto descendente para criar a nova instância.

Mas quando eu faço algum teste eu descobri que eles são realmente os mesmos:

<code>class Test
   attr_accessor :x
end

x = Test.new
x.x = 7
y = x.dup
z = x.clone
y.x => 7
z.x => 7
</code>

Então, quais são as diferenças entre os dois métodos?

questionAnswers(6)

yourAnswerToTheQuestion