re: Explain :colon and colon: in Ruby Like I'm Five VIEW POST

TOP OF THREAD FULL DISCUSSION
re: :colon and colon: are both symbols in Ruby, a type of data (like strings, integers, etc). As this Stack Exchange answer says, symbols are immutabl...
 

just doing a nitpick addition :-) :

actually, this works just fine: {"symbol-key-with-dash": :cool}. its that you can write a Symbol literal with quotes: :"looks-weird-still-is-symbol"

as a newcomer, my first "whoa" effect was when i realized that every function call like render :show, status: :created, location: @user is ultimately translated to: render(:show, {:status => :created, :location => @user});. it's just that in ruby you don't have to specify that curly braces to make the last argument a Hash. ruby is implicit. you can omit the brackets, the semicolon.

 

Oh interesting! Didn't know that. I personally think it's a bit confusing to have do "string": or :"string"if you wanted to have a key as a String instead of a Symbol. Good point to bring up though.

code of conduct - report abuse