唐突に Scope Guard を理解した。
- スコープを抜けたとき呼ばれるコールバック関数を(後処理などのために)登録しておくためのものだった
- AnyEvent とかと一緒に紹介されてたことが多かった(気がする)ので「なんか難しそう」と敬遠したままだった
- 短いものでも自分でコードを書いて動かしながら試すと理解しやすかった
- Perl は my 宣言した変数のスコープがブロック単位だけど Ruby はそうではないので Ruby で簡単に同じことをするのは難しいらしい
Scope::Guard を使ったほう
Guard を使ったほう