ブロックの中で def するのと,無名関数を宣言できるのとどう違うの?