It's what the C++ people love to refer to as "Undefined behavior."
Which reminds me of an amusing exchange on P5P in 2004:
In scalar context, the behaviour of sort() is undefined.
-- from perldoc -f sort
The other strawman I use is "sort in a scalar context might just play Nethack"
-- Randal L. Schwartz on P5P, June 10 2004
A patch is attached. It's incompatible with David's 'sortedness' patch,
and fails if nethack is not in the user's path.
Configure should be expanded to detect rogue-like games that are
available on the system, so that an appropriate one can be started if
nethack is not installed.
My original goal was for sort to play nethack when called in a void
context, however it appears that Perl is smart enough to optimise this
-- Paul Fenwick's response