in reply to help needed in storing the return values of unpack

Use array slices:

my( @a, @b, @c ); ( @a[0..19], @b[0..9], @c[0..3] ) = unpack 'C20C10C4', 'abcdefghijklmnopqrst1234567890fred'; print "@a\n@b\n@c"; 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 1 +15 116 49 50 51 52 53 54 55 56 57 48 102 114 101 100

Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
Lingua non convalesco, consenesco et abolesco. -- Rule 1 has a caveat! -- Who broke the cabal?
"Science is about questioning the status quo. Questioning authority".
In the absence of evidence, opinion is indistinguishable from prejudice.