Naja, erstmal muss man wissen, ob man ~~ überhaupt verwenden will, da der Operator so viel kontextabhängiges tut...
Der Kommentar "is contained in" ist schonmal irreführend.
array1~~array2 überprüft für jedes Paar, ob
array1[i] ~~ array2[i] gilt. Und 1~~1 und 2~~2 und 3~~[3,4] ist alles true, da skalar~~array im Prinzip ein grep ist.
Guck dir mal in
perlop den Abschnitt "Smartmatch Operator" an.