The current plans indicate that a subroutine's params should be defaulted
like this:
sub load_data ($filename ; $version / /= 1) {...}
(The space between / and / is on purpose, my emailer has problems if they
are together.) If that's the technique, how does the caller indicate that
the second param is *supposed* to be undef? If I were to call a sub like
this:
load_data ($filename, undef);
then I would expect that means that I am explicitly saying the second
argument is supposed to be undef. However, if I call it like this:
load_data ($filename);
then I'm not sending the second param and it can be whatever the default is.
Ergo, I propose that / /= and simply = are both allowed and mean slightly
different things:
# $version is 1 if the second param isn't sent at all
sub load_data ($filename ; $version = 1) {...}
# $version is 1 if the second param is undef
sub load_data ($filename ; $version / /= 1) {...}
(Yes, this is a repeat of an earlier suggestion. It was suggested I might
repost reworded.)
-Miko