¿Por qué Matz decidió hacer que las cadenas sean mutables por defecto en Ruby?

Es el reverso de esta pregunta:¿Por qué las cadenas no pueden ser mutables en Java y .NET?

¿Se hizo esta elección en Ruby solo porque las operaciones (anexos y demás) son eficientes en cadenas mutables, o hubo alguna otra razón?

(Si se trata solo de eficiencia, eso parecería peculiar, ya que el diseño de Ruby parece no otorgar una gran importancia a facilitar una implementación eficiente).

Respuestas a la pregunta(2)

Su respuesta a la pregunta