in reply to Re^6: Binary to decimal conversion
in thread Binary to decimal conversion

Because print takes a LIST and hence provides a list context to reverse which triggers the list context behavior from the latter (and a 1 element list reversed is indistinguishable from the original 1 element list for obvious reasons). Stick a scalar in there after the print, and/or store the reverse into a scalar temporary variable, and you'll see the behavior you're expecting.

The cake is a lie.
The cake is a lie.
The cake is a lie.

Replies are listed 'Best First'.
Re^8: Binary to decimal conversion
by ikegami (Patriarch) on Dec 11, 2007 at 19:09 UTC
    Said code (and then some):
    $\ = "\n"; print(my @a = reverse('hello')); # hello (order or scalars reversed) print(my $s = reverse('hello')); # olleh (order of chars reversed) print(reverse('hello')); # hello (order or scalars reversed) print(scalar(reverse('hello'))); # olleh (order of chars reversed) sub f(@) { return @_; } sub g($) { return @_; } print(f(reverse('hello')); # hello (order or scalars reversed) print(g(reverse('hello'))); # olleh (order of chars reversed)