If I leave it OO don't I avoid the issue of the function name collision you mention? While I agree there is no current or compelling reason for this module to be OO it does seem to work easily enough to provide the functionality I need. Would I see benefits from it being non-OO?
The DATA read has been moved outside of the new since that was the wrong spot for it and subsequent object creations would have resulted in an empty hash ref being assigned to $self.
Of the names I felt the Geography namespace would be best, but I am still struggling with the Census::Regions / Regions::Census issue for these reasons:
- Geography::US::Regions would leave the name space open for additional Region separation specific modules each named for their source, as in this case Census
- Geography::US::Census seems limiting to me because the number of Geography based concepts that would deal with Census seem limited.
Thanks for the feedback.