Yes, it is acceptable. Some people use it when they write Perl files that are both modules (they cay be
used/
required, they declare a namespace (
package), they possibly
export subroutines) and ordinary perl programs (they do useful work when run via
perl file.pm). At the end of the file there is usually a line:
main unless caller;
which checks whether the file is
called as a module and runs the "main" sub if not.