Size: a a a

2019 December 13

VK

Vyacheslav Koval in Modern::Perl
Ivan Bessarabov
Нашел вот такой пример страного на мой взгляд поведения — https://perlbanjo.com/8b31258ec3
а что странного в этом примере, если ты присваиваешь сумму $num2 и 0.01 в $num3 и выводишь $num2
источник

VK

Vyacheslav Koval in Modern::Perl
если выводить $num3, то все ок
{"num2":"3.1415926"}
{"num3":3.1515926}
источник

IB

Ivan Bessarabov in Modern::Perl
Vyacheslav Koval
а что странного в этом примере, если ты присваиваешь сумму $num2 и 0.01 в $num3 и выводишь $num2
В этом примере две вещи меня удивляют две вещи
1. работает по разному в разных версиях
2. я бы ожидал что $var + число никак не повлияет на $var
источник

VK

Vyacheslav Koval in Modern::Perl
действительно интересно, в версиях 5.28.2 и 5.30.1 переменная после суммы представляется числом
источник

SA

Sergey Andreev in Modern::Perl
привет, есть хэш как хранитель какой то конфигурации. Один из элементов это анонимная функция которая выполняется когда нибудь потом. Как из этой анонимной функции обратиться к самому этому хэшу не передвая его в анонимную фукнцию?
источник

С

С in Modern::Perl
Очевидно никак?
источник

SA

Sergey Andreev in Modern::Perl
Ну а вдруг, потому и спросил. Уточнить, так как сам не нашел варианта.
источник

b

basiliscos in Modern::Perl
если ты конфиг в глобальную переменную сохранишь. то из анонимной ф-фии можешь к ней обращаться
источник

K

Kolunchik in Modern::Perl
глобальные переменные рулят
источник

SA

Sergey Andreev in Modern::Perl
Ну глобально только если. А так не хотелось.
источник

b

basiliscos in Modern::Perl
через ж., конечно, но можно
источник

VT

Vasily Terkin in Modern::Perl
через замыкание еще можно
источник

b

basiliscos in Modern::Perl
ну ещё хардкорный вариант - попробовать что-то https://metacpan.org/pod/PadWalker и найти себя, а там и внешний хэш
источник

b

basiliscos in Modern::Perl
но это - если хочешь чтобы коллеги тебя через год пристрелили
источник

VG

Vadim Goncharov in Modern::Perl
замыкание же
источник

С

С in Modern::Perl
А если на эту функцию станут ссылаться из нескольких мест?
источник

VG

Vadim Goncharov in Modern::Perl
да какая ему разница
источник

b

basiliscos in Modern::Perl
в общем самый норм вариант - передавать себя, или, лучше, какой-то объект из к-го можно вытащить конфиг
источник

SA

Sergey Andreev in Modern::Perl
я сделал еще одну анон. функцию которая обьявлена до хэша, а после хэша туда присвоил код который обращеается к хэшу
источник

SA

Sergey Andreev in Modern::Perl
ну и собственно в самом хэшэ эта новая функция вызвается. все работает
источник