Indeed, the secret-sauce that you are looking for here is “references.”
The concept here is several levels above the concept that you see in “C,” this being of course the language in which Perl was implemented. A reference is, if you want to think of it this way, “a pointer to” a complete, self-describing Thing, that is also well-known to the Perl interpreter and fully part of the environment that it creates. Perl can look at a reference , and know everything that needs to be known about what it refers to. It knows how many references currently exist to that same thing, therefore it knows whether-or-not that object is eligible to be garbage-collected. The Perl language does not have the concept of a “structure,” in the C/C++ sense, but it does have the concept of a list, array, and hash.
The environment that has been created by the Perl interpreter is intended to focus upon providing an efficient solution to the same problem that one might use “pointers to structures” in bare-bones C to address, but to do so in a way that is much less reliant upon the program-in-question to “do everything in just the right way, or else.” There exist several layers of well-tested software that any Perl programmer can rely upon the existence of, that a C-programmer cannot. All of us here fully-understand both environments.
Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
Read Where should I post X? if you're not absolutely sure you're posting in the right place.
Please read these before you post! —
Posts may use any of the Perl Monks Approved HTML tags:
Outside of code tags, you may need to use entities for some characters:
- a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
Link using PerlMonks shortcuts! What shortcuts can I use for linking?
See Writeup Formatting Tips and other pages linked from there for more info.
| & || & |
| < || < |
| > || > |
| [ || [ |
| ] || ] ||