I understand what you're saying and appreciate the comment. There is something you may be overlooking, though. I would like the user to have the choice of either calling
new then
obscure, or just going straight to
Business::CreditCard::Obscure->obscure(). That's why I have the extra goodies inside that method. The constructor stuff in the
new method was mostly just for user convenience to suit their preferred coding style. I'm aiming for maximum effective flexibility.
---
It's all fine and dandy until someone has to look at the code.