in reply to GetOptions getting a string

From the docs for Getopt::Long

Using a colon : instead of the equals sign indicates that the option value is optional. In this case, if no suitable value is supplied, string valued options get an empty string '' assigned, while numeric options are set to 0 .
GetOptions("flag:s" => \$flag);

poj