in reply to :-delimited lists in CGI parameters
there are some issues with your code:
1. you're changing the hash %params. this does not change the cgi parameter hash. (i would expect, though, that
changing $params, if it was a tied hash reference, would change the behaviour, but it doesn't). so the default is still the value with which the script was called. only using the param() method helps here. (can this be considered
as a bug in CGI.pm?)
2. setting the -default parameter does not change the value
unless you also use -override => 1