in reply to My first attempt

Good stuff. Props for nesting s//join,map{}qw()/e to reduce legibility. Since this will probably wordwrap in the middle of a long qw:...:, and in fact, in the middle of a "word", you may want to add a hard line break to protect your encoding.

--
[ e d @ h a l l e y . c c ]