Ameba warning I don't understand

operands.select { |o| o.value.is_a?(Register) }.map { |r| r.value.as(Register) }

generates a warning : Disallowed block parameter name found
Ameba targets the |r|

I don’t understand what Ameba is trying to say ;-)

That warning seems to be generated if your block parameter name has 1 or 2 characters and doesn’t match a rather arbitrary and specific list of names. I suggest disregarding this rule entirely

Thanks ! Totally agreed

Yeah this rule seems super opininated. There’s nothing inherently wrong with short names for short blocks.
This rule even has a quite extensive yet IMO quite arbitrary exclusion list: ameba/src/ameba/rule/naming/block_parameter_name.cr at master · crystal-ameba/ameba · GitHub

Related: Naming/BlockParameterName + stdlib methods like sort · Issue #453 · crystal-ameba/ameba · GitHub