Just a little advice regarding the portability of shebang lines:
in reply to Should options in the shebang line generally behave like switches given in the commandline?
Some (mainly ancient, but somewhere still living) Unices imposed serious limitations on the length of the shebang line (in characters) or on the processed number of the options (or option words). So it is considered good practice not to use relative paths, long commands and options/switches in the shebang line. IIRC I also read about cases where the amount of white space was relevant between the #! and the path. So my recommendation is to stick with this:
#! /usr/bin/env perl
If you move your options to in-code (eg. use warnings instead of perl -w) it also enhances readability.