If I leave it OO don't I avoid the issue of the function name collision you mention?
Perl uses packages to implement OO but packages don't necessarily imply OO. Packages provide namespaces that help avoid function and variable name collisions. Those functions don't necessarily have to be written in an OO fashion, though.
|90% of every Perl application is already written. ⇒|