Sorry, that's too easy to misunderstand.
Let me be more precise:
$b = $a with = overloaded to ->clone will not do an immediate $b = $a->clone °
It's rather a kind of copy-on-write.
After the assignment the refs will still be identical : $b == $a
The ->clone ("copy" in COW) will only happen delayed just prior to changing $b or $a ("write" in COW)
would be executed in a manner equivalent to
But the wording is fuzzy and needs to be tested.
Anyway this could indeed fix the problem of the OP in an efficient way.
Cheers Rolf
(addicted to the 𐍀𐌴𐍂𐌻 Programming Language :)
Wikisyntax for the Monastery
°) In Math::BigInt the cloning is done with the method ->copy
In reply to Re^3: Action at a distance
by LanX
in thread Action at a distance
by syphilis
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |