sub assign { %$_ = %{shift @_} for \ (my (%a, %b, %c)); dd ["assign", \(%a, %b, %c) ]; } assign( \(%x, %y, %z));