putsでHashのリテラルを表示させようとしたときに SyntaxError が発生する。
puts {a: :a}
を実行すると、
SyntaxError: unexpected ':', expecting '}'
とエラーが表示されて終了する。
色々調べてみたところ、
puts ({a: :a})
とか、
a = {a: :a}
puts a
であればリテラルが表示される。
と言うことは、puts が{}をブロックとして解釈している??
これは設計通りの動作?でもリファレンスを探しても載っていない。
どなたかご存知の方教えて下さい。