in reply to What does "! !" do?

See: Perlop

You're looking at a pair of negation operators. By doubling it up, you keep the true values true and the false values false, but convert all true values down to a 1.

More concisely written as !!(expression), you can think of it as a boolean-ization operator