What is a Ruby 'symbol'?
A symbol is something that looks like ':symbol'
in ruby code, where it
is like a variable name but preceded by a colon character. It is used
extensively in Rails, which had been confusing me in the past, and it
still does, given that I have not grasped full clarity of its
significance yet.
The explanation given to me was that the definition of a symbol is ‘like a string you never intend to show to
the outside world’. The example told to me as an illustration was
primarily utilized as hash keys, which I am told that it is cheaper than
using strings (probably because it’s immutability, which I suspect it’s
acting like a singleton object too). The closest example that I keep
associating to, is the C preprocessor usage of '#define'
.
Other than its extensive usage in Rails, I’m don’t see how much it will be of any average coding use yet, unfortunately. There’s still some way to go in the path of Ruby enlightenment for me.