in reply to Methods and attributes?

One way is to assign @_ to a hash. It gets hard to validate that there weren't misspeled attributes that way, so there are helper modules like Params::Validate.