OK, thanks for correcting!
(I already suspected that I should place one more "IIRC". :)
Maybe I remembered something different or Scalar::Util::dualvar confused me or the reality in perl is even more complex. (and the latter wouldn't surprise me)
PS: or was it JS ... ?!?
For the records, here the source of my misunderstanding
Perl can internally represent numbers in 3 different ways: as native integers, as native floating point numbers, and as decimal strings. Decimal strings may have an exponential notation part, as in "12.34e-56" . Native here means "a format supported by the C compiler which was used to build perl".