From: Michael G Schwern [mailto:[EMAIL PROTECTED]]
> 
> Before anyone gets the wrong idea, I don't think the solution is a
> drastic scaling back in Perl's flexibility.  I just don't know what
> the solution is yet.  Maybe it should be possible for a class to
> completely seal off its namespace to the outside world on request.

How do you determine "the outside world"? Out of the package's namespace or
out of the file's?

When you say "seal off its namespace", do you mean that the symbol table
would be thereafter static... or that only code within the predeclared scope
could mess with the symbol table? What about lexicals?

How about:

  package_name.finalize();
  finalize package_name;

finalize could/should? probably be context-aware as to which BEGIN, CHECK,
INIT, or END phase it is in... Or would that be better as BEGIN.finalize(),
CHECK.finalize(), ... with package.finalize() implying:

  $_.finalize()  foreach(qw(BEGIN CHECK INIT END))

Reply via email to