in reply to error joining hashref of an arrayref

print join(',', @{ $uword{ $seen{ $key }[ 1 ] }[ 1 .. $#{ @uword{ $see +n( $key ) } } ] } );

Wouldn't it be better to make this piece of code simpler by introducing some intermediate variables? At least $seen{$key} can be replaced by a new variable since it appears twice, but even more might be used to improve readability.