Book HomeLearning Perl, 3rd EditionSearch this book

B.3. Packages

Packages[400] allow you to compartmentalize the namespaces. Imagine that you have ten programmers all working on one big project. If you use the global names $fred, @barney, %betty, and &wilma in your part of the project, what happens when I accidentally use one of those same names in my part? Packages let us keep these separate; I can access your $fred, and you can access mine, but not by accident. Packages are needed to make Perl scalable, so that we can manage large programs.

[400]The name "package" is perhaps an unfortunate choice, in that it makes many people think of a packaged-up chunk of code (in Perl, that's a module or a library). All that a package does is define a namespace (a collection of global symbol names, like $fred or &wilma). A namespace is not a chunk of code.



Library Navigation Links

Copyright © 2002 O'Reilly & Associates. All rights reserved.