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>