in reply to Re: How to convert Storable object back to a hash
in thread How to convert Storable object back to a hash

No examples as I have not tried it yet (not for any particular reason).

It's pretty simple:

# Old-style dereferencing: my %hash = %$ref; my %hash = %{ $ref }; # New-style dereferencing: my %hash = $ref->%*;

In most projects I use the old style because I'm familiar with it, and I often need compatibility with older Perls. I do agree that the new style is usually more readable (despite having more punctuation characters).

Replies are listed 'Best First'.
Re^3: How to convert Storable object back to a hash
by cavac (Prior) on Jun 26, 2023 at 09:21 UTC

    I do agree that the new style is usually more readable

    For me, old style dereferencing makes a bit more sense in my head when reading the code. Mostly, because for me dereferencing reads more like a type conversion/math operation:

    # "The integer of $x" my $foo = int($x); # "The square root of $x" my $foo = sqrt($x); # "The reference of %x" my $foo = \%x; # "The dereferenced hash of $x" my %foo = %{$x};

    It also feels more in line with how variable types (scalar, hash, array) are typical denoted in perl, with the "classic" dereferenced hash starting with a correct %, whereas the new style feels more akin of "a scalar changing into a hash in the middle of the variable name".

    But that's just my personal preferences.

    PerlMonks XP is useless? Not anymore: XPD - Do more with your PerlMonks XP