Beefy Boxes and Bandwidth Generously Provided by pair Networks
laziness, impatience, and hubris
 
PerlMonks  

Re^2: Using 'keys' on a list

by lammey (Novice)
on Jun 29, 2021 at 14:46 UTC ( [id://11134445]=note: print w/replies, xml ) Need Help??


in reply to Re: Using 'keys' on a list
in thread Using 'keys' on a list

Firstly, thanks for your response, much appreciated =).
could you please elaborate? I don't understand the question ...

I'm referring to this %{{f}} code which creates a transient hash (which keys can then operate on) from a hash reference. Perhaps I'm not using the jargon correctly, my apologies.

I don't know of more elegant ways to do this in other languages to be honest. I was hoping that it were possible to create a transient hash more directly with something like  keys %(f) for example.

Creating a helper routine which hides this away or adjusting the f() routine to return a hash reference would both work, but the former sacrifices the brevity I'm after and the latter may not always be feasible.
keys HASH operates on the datatype hash not list, which means something starting with a % sigil here
Do you know if there's a reason that it can't operate on a list?

Replies are listed 'Best First'.
Re^3: Using 'keys' on a list
by LanX (Saint) on Jun 29, 2021 at 15:03 UTC
    > Do you know if there's a reason that it can't operate on a list?

    Lists are the most basic containers in perl syntax but not a variable's data type.

    A list is not necessarily a hash, you can have odd numbers and dupplicate keys or irregular "keys"

    Keys would also be more vulnerable to syntax errors.

    Many other languages don't even know how to handle lists.

    But you're free to implement the workarounds I've shown you.

    Cheers Rolf
    (addicted to the Perl Programming Language :)
    Wikisyntax for the Monastery

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://11134445]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others drinking their drinks and smoking their pipes about the Monastery: (2)
As of 2024-04-20 03:30 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found