Mehr, Assaph (Assaph) wrote:
>>Why?  Speed?  I imagine that, in both cases, a string could have been 
>>used as well.  A string, though, would let you craft an invalid method
> 
> 
>>name.
> 
> 
> That's evil, but apparently legal:
> 
> irb(main):005:0> $sm = "invalid name".to_sym
> => :"invalid name"

You can also construct symbols with spaces as literals:

:"a b c"
# => :"a b c"
%s{a b c}
# => :"a b c"