Rob Dixon wrote:

> Michael C. Davis wrote:
> >
> > At 01:31 AM 2/28/04 +1100, David le Blanc wrote:
> > >Now remember, a perl 'prototype' is not a prototype in the regular
> > >sense,
> > >but a method to override perl's natural greedy argument list collection,
> > >and a method to create functions which emulate perl's builtins (ie,
> > >provide
> > >hints to the expected calling context).
> >
> > Good point.
> >
> > Just so I'm clear ... will the prototype still apply if someone calls the
> > subroutine by explicit module name e.g.
> >
> > my $x = MyProject::ModuleName::MySub;
> >
> > without importing any symbols from the module, in the case when the module
> > does not export any names by default?  Or is importing/exporting a separate
> > issue from prototypes? It seems there are some hoops one has to jump
> > through to make sure that the prototype is 'known' for any given subroutine
> > call, but I'm not real clear as to just what those hoops are ...
>
> You're now asking a question where I can just say, "Try it!". I won't
> know without doing a trial, and if you can both help and ask questions
> then you'll be highly sought-after :)
>
> Well done.
>
> Rob

I think it might also be good to refer the OP back to James' post, which he seems
to have overlooked.  The caveat you provided earlier still makes sense.

I would also question whether the toolbox approach is a good investment of effort
in the long run.  Particularly if this package is meant as a core constants for a
project, I would want to direct the OP towards the very direct
use constant UPPER_CASE_IDENTIFIER => 'Hard-coded value';

Since he seems to be just starting in, let's get him started in on DWIM coding
approaches.

Joseph



-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
<http://learn.perl.org/> <http://learn.perl.org/first-response>


Reply via email to