#or, to be only slightly less ugly sub rev_scalar { my $data = shift; my $i; for($i = 0; $i < int(length($$data)/2); $i++) { (substr($$data,$i,1),substr($$data,-($i+1),1) = (substr($$data,-($i+1),1)substr($$data,$i,1)); } }