ブロックを表すのに do end と { } の2種類あるのはなぜ?
結合度の違いがあるのは知ってるけど、なぜわざわざ2種類用意する必要があったのでしょうか。

個人的には、最初に do end が用意されていたけど、1行で書くときは見づらいから
あとから { } も使えるようになったのかなと推測してます。正しい?