in reply to Web Browser File Upload Progress Bar in Perl w/AJAX

is this: $q = CGI->new(\&hook [,$data [,$use_tempfile]]); valid Perl?


Although it is not literal perl. The first argument "\&hook" is a reference to the subroutine "hook".

The second argument is optional, and thus enclosed in [ and ] characters, and similarly the last argument is optional.

So you could call it in three ways:

# just one argument. $q = CGI->new(\&hook); # two arguments. $q = CGI->new(\&hook ,$data ); # all three - party time! $q = CGI->new(\&hook ,$data, $use_tempfile);

Under Unix-like systems there is a convention that optional arguments are enclosed in "[" and "]" characters. For a simple example of that try readng "man ls" which has the following output:

ls [OPTION]... [FILE]...