There's not really anything to decide. Putting an array inside quotes returns a scalar with the array contents, so if $foo == [ 'a', 'b' ], then "@$foo" == "ab". The regexp searches that string for the answer, so if the answer given was "b", what were essentially doing is "ab" ~= /b/i. This will match, and the correct grade counter is incremented.
Make sense?
_______________
DamnDirtyApe
Those who know that they are profound strive for clarity. Those who
would like to seem profound to the crowd strive for obscurity.
--Friedrich Nietzsche