in reply to Calling a function with parameters from a Module

Try

XML::parser::parsetag("b");

If the subroutine is called by XML::parser->parsetag("b"), $_[0] contains 'XML::parser' string - it is widely used in object oriented modules... See, for instance, man perlmod for details.

Other good practice is to name own modules with starting upper letter, so, XML::Parser would be better a little bit, it avoids clash with system modules, which are lowercased.

Update: Added: It is possible that you already have CPAN module XML::Parser installed - it would be better to name your module XML::MyParser in this case.