Size: a a a

2020 January 27

EG

Emmanuel Goldstein in Modern::Perl
Никогда не считай деньги в floating point
источник

VO

Vyacheslav Olkhovchenkov in Modern::Perl
а если первое -- то запомнить одно единственное правило: нигде, никогда, ни в коем случае не считать и не хранить деньги в формате с плавающей точкой
источник

AT

Askar Timirgazin in Modern::Perl
Emmanuel Goldstein
Считай в целых числах.
Спасибо, так и делаю, просто думал что-нибудь новое узнать
источник

EG

Emmanuel Goldstein in Modern::Perl
Если очень хочется, можно считать деньги в точных числах.
https://metacpan.org/pod/Math::Decimal
https://metacpan.org/pod/Math::FixedPoint
источник

EG

Emmanuel Goldstein in Modern::Perl
источник

EG

Emmanuel Goldstein in Modern::Perl
Но лучше в целых.
источник

VO

Vyacheslav Olkhovchenkov in Modern::Perl
чем же Math::BigFloat для денег подойдет?
источник

EG

Emmanuel Goldstein in Modern::Perl
Он же с фиксированной точностью, не?
источник

EG

Emmanuel Goldstein in Modern::Perl
Вру, нет. Значит, он не подойдёт.
источник

EG

Emmanuel Goldstein in Modern::Perl
Два других пакета подойдут.
источник

AT

Askar Timirgazin in Modern::Perl
о, вот
источник

AT

Askar Timirgazin in Modern::Perl
питон3 в таком же примере на один знак больше даёт, кстати
источник

VO

Vyacheslav Olkhovchenkov in Modern::Perl
тут еще надо учитывать что у бухгалтеров еще и правила округления свои
источник

EG

Emmanuel Goldstein in Modern::Perl
источник

IB

Ivan Bessarabov in Modern::Perl
Askar Timirgazin
@PerlBanjoBot $ perl -e "print die 101.1 - 101;"
Насколько я поинимаю, print тут лишний =)
источник

AT

Askar Timirgazin in Modern::Perl
да, но потом стало интересно, что будет с банжо
источник

S

Sergey in Modern::Perl
Emmanuel Goldstein
Что тебе мешает сделать просто lvalue-функцию?
Медленно
источник

S

Sergey in Modern::Perl
Vadim Goncharov
для этого есть рестриктед хэши, хоть прям из коробки use fields
Еще более медленно
источник

VG

Vadim Goncharov in Modern::Perl
Sergey
Еще более медленно
есть замеры?
источник

EG

Emmanuel Goldstein in Modern::Perl
Sergey
Медленно
У тебя это прямо сейчас bottleneck в твоём коде?
источник