Rubyは複数の似たような構文があったりして、言語設計自体にわかりにくさがあるのよ。
do〜endと{〜}のどちらでも使えます、でも片方しか使えない場合もあります、なんて
混乱以外の何物でもない。