in reply to A silly splicing question...

Hmmm - this is almost a "second coffee of the day" question. Looking at the doco for splice, you could do:
@last_bit = splice(@a, 2, , 'foo');
to remove the 'c' and replace it with 'foo'. Then a
@a .= @last_bit;
to stick the removed things back on the end.

I am sure there is a way to combine the two operations.

Updated: redcloud had it - set length to 0 and it automagically happens. Sigh. Where is that coffee?