Former always confusing me, because I can’t remember, is it same as Int32 -> _ or Int32 -> Nil ?
When we said Ruby, there are many alias method, it more readable on some cases, but it make newbie confuse too, Crystal not do like this as said the the official to Rubyist doc, so, I propose we don’t need two different ways of writing same things.
BTW: From an aesthetic perspective, the latter is also more symmetrical.
To me, the Int32 -> format is a nice shorthand for “receives an Int32 and the return value is useless”. That implies that the block is used entirely for side effects based on the block inputs and maybe receiver state.
It’s implemented as implicitly returning Nil and that makes sense.