in reply to Re: Hash of hashes syntax
in thread Hash of hashes syntax

Therefore, to create a multi tiered data structure, you need to put either an annonymous (hash|array), or a reference to a (hash|array).

This may be a bit pedantic of me, but there's no sense in confusing the issue.

You can't put an anonymous array (or an anonymous hash) into another structure. References are required in order to build nested data structures. It doesn't matter whether a reference refers to a named thingie or an anonymous one.

This ['anon', 'array'] is not an "anonymous array." It is a reference to an anonymous array. Similary with this reference to an {anonymous => 'hash'}. It is best to understand that these constructs actually are references and to avoid useless distinctions between them and other references.

-sauoq
"My two cents aren't worth a dime.";

Replies are listed 'Best First'.
Re: Re: Re: Hash of hashes syntax
by thor (Priest) on Mar 20, 2003 at 06:00 UTC
    You're absolutely right, however, the OP didn't know how to constuct a multi-level data structure, so I'm pretty sure that he didn't know about annonymous arrays. I was just presenting more of the lingo so that next time someone says something about either an anonymous array or an array ref, s/he will at least have had exposure. Also, FWIW, the Camel seems to use annonymous array to be synonymous with array reference (similarly for hashes).

    thor

      I did say I was being pedantic. :-)

      I do think that its best to define lingo when you present it though. A short explanation like "an anonymous array or hash doesn't have a name and is accessible only through a reference" can eliminate a lot of misunderstanding. Suggesting that an array could contain "a reference to an array" or "an anonymous array" is a tad misleading.

      The Camel plays a little loose with the term, even going by its own glossary defintion. But then again, it actually has a glossary which explains exactly what an anonymous referent is.

      For the record, I don't think there is anything wrong with using the shorter "hash of anonymous arrays" to the long-winded precision of "hash of references to anonymous arrays." Afterall, once you know what an anonymous array is, you know that a reference must, by definition, be involved. I also think that it is perfectly fine to call an "hash of array references" an "hash of arrays."

      But I do think it is confusing to speak of a hash which holds array references or anonymous arrays because anonymous arrays are array references (in this loose usage.)

      Did I say something about being long-winded?

      -sauoq
      "My two cents aren't worth a dime.";
      
      A reply falls below the community's threshold of quality. You may see it by logging in.