in reply to Re^2: 'base' versus @ISA, why?
in thread 'base' versus @ISA, why?

Looking at the source, I don't see it doing anything except checking if the module is already in your @ISA. That seems pretty sane to me.

Replies are listed 'Best First'.
Re^4: 'base' versus @ISA, why?
by bart (Canon) on Jul 23, 2007 at 19:29 UTC
    It's checking ${"$package\::VERSION"} or something to that effect, while a package is not required to have a $VERSION variable.

    Maybe its behavior has been sanitized, but the damage is done. My trust has been shaken.

      Hmm, none of my classes have $VERSION declarations, and base has never given me any trouble about it.
        Hmm, none of my classes have $VERSION declarations, and base has never given me any trouble about it.

        Me neither.

        The current (5.8.8) use base requires the file (and ignores any not-found exceptions) if there isn't already a $VERSION for the package containing a scalar. So I guess if you have something that sets $VERSION in another package you will get problems - but that seems am odd edge case to me.