in reply to Exporter Module

@EXPORT, @EXPORT_OK, and @EXPORT_FAIL are described in some detail in the perl documentation: see exporter.

@ISA is used to store the super classes of a class. For more information, on @ISA see perltoot.

Briefly, here's how the two fit together:

The actual exporting is done by a subroutine named import(...). It processes @EXPORT etc. It also takes the parameters to use and processes them. There is a default definition for it, so unless you want to do something special, you can pretty much forget about it and let the default subroutine do its thing. To get access to the default definition, you need to make your module a subclass of Exporter, hence the @ISA statement.

Best, beth

Update added explanation of how @ISA and @EXPORT etc work together.