$A = "H"; # $A is "H" $= .= /A/-65; # leave $= set to its default of 60. Just misdirection. $; = $A.$; ; # $; is "H" $#{($;or$A)}="J"; # Set the last index value of @H to J. Just misdirection. $_=$#{_}- -75; # The index of the last element @_ is -1 + 75 so $_ is 74 chr; # return true (Do nothing) print chr; # Print char corresponding to ascii value 74 that is "J" $; =~ s/^(H)./AP$1/; # Change $; from H to APH print $; ; # Print $; that is APH -85 # Return false. Game over.