Hi Jeremy, > > Not everyone agrees there is a problem. I think the current behavior > of treating strings and symbols differently is best, as they represent > separate concepts. Is ruby core itself promoting the usage of Symbols and Strings as separate concepts through the current API? > "The basic philosophical difference between a symbol and a string is a > ruby symbol is an identifier, while a ruby string just represents > arbitrary data. You should convert a string to a symbol if you know that > the data the string contains represents an identifier you would like to > use. You should convert a symbol to a string if you are using name of > the identifier as data." Can immutable strings act like a bridge between these two concepts? > > Matz's final comment on #5964: > > "In Ruby, Symbols annd Strings are different in both semantics and > behavior (and implementation). Unifying them cause a lot of problems. > I guess it's not worth changing." Matz also said: "During early stage of 1.9 development, I tried to make symbols and strings behave same...I understand your problem..." If Matz tried it then that makes me think that something motivated him to do so. And if Matz "understands your problem" then maybe he is recognising there is a problem? > I think part of the confusion about the difference between Symbol and > String stems from the changes in ruby 1.9, which added many String > methods to Symbol. In ruby 1.8, this distinction of symbols for > identifiers and strings for data was more apparent. Aren't you recognising there is a problem when you state "...part of the confusion..."? If we understand that the concept of Symbols as identifier is valuable outside of ruby core (There are people that disagree) then lets discuss on that base and see if we can get a solution that can succeed in achieving both goals: 1. Stop the overlap between Strings and Symbols 2. Set Symbols as plain simple identifiers As a programmer I always try to strip complexity as much as I can from the problem in hands. The efforts usually lead to simpler solutions. IMHO the overlap between Strings and Symbols in ruby nowadays adds a big plus to the ruby language complexity. That complexity is the problem I am bringing up for discussion. Thanks, Daniel Unsubscribe: <mailto:ruby-core-request / ruby-lang.org?subject=unsubscribe> <http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>