is it some special kind of variable on the 10th line of our last example?
10: $::PROGRAM = basename $0;
You don't indicate which of the two variables in that line that you haven't encountered before.
This is a package global variable in main. $::var is equivalent to $main::var.
See one of broquaint's other tutorial's Of Symbol Tables and Globs for more information if that was the source of your question.
The all upper case is a loose convention used to indicate global variables.
This is documented in perlvar. Search for the text "$PROGRAM_NAME".