Ответ 1
Вы можете использовать специальную строку "inf"
:
perl -E'say "inf" + 1'
inf
perl -E'say 1 / "inf"'
0
et cetera.
Другие специальные строки включают +inf
, -inf
, nan
. Конечно, это также работает с bignum
или bigint
прагмами. Однако эти прагмы экспортируют эквивалентные функции inf
и nan
, чтобы вы могли использовать простые слова.
Изменить
Как отметил @ikegami, похоже, что нет портативного способа выполнения истинных бесконечностей без модуля. Я просто пробрался через этот интересный поток perlmonks, но он не становится менее запутанным. Возможно, лучшим решением было бы принять штраф за производительность и use big{num,int,rat}
с самого начала, но использовать no big{num,int,rat}
в областях, где они не требуются.