• [^] # Re: String... symbol

    Posté par . En réponse à la dépêche Ruby 2.0 est sorti. Évalué à 4.

    Oulà attention ! Les Symbol ne sont pas que des String immuables.

    Les Symbol sont également des "singletons". Il t'es garanti qu'une seule instance d'un même symbol existe. Si tu crée deux symboles identiques la seconde instantiation te renverra en fait la première instance.

    Jusque là rien de grave. Par contre ça implique que les Symbol ne sont jamais déalloués par le GC. Autrement dit il ne faut jamais créer un symbol à partir d'une entrée utilisateur sans quoi tu t'exposes à un déni de service.