Hi Marco,
This is common behaviour in almost any programming language... if you define a variable in a scope with the same name as a variable in an outer scope, it will hide/shadow it. In this case, the "variable" in the inner scope is implicit, representing the entity record in a particular row, that's all...
And like Eduardo mentions, Input/Output Parameters and Local Variables always show up in the Locals folder, as well as the Output Parameters from any query or action.