You're right. If everything will be called OBJECT :: sub () or $ obj-> sub (), you should be fine.
For inheritance you will need to use @ISA, and for this you do not need an exporter.
In addition, the second quotation that you indicated concerns exported data poured into the module.
If you use: use libname (); against lib, which exports using Exporter, you are guaranteed not to export anything. This can be used to prevent namespace pollution. If you explicitly export by function name, these are the only functions you get.
source share