I agree that it would be nice to have more level of
control over autovivification. As
tye suggests,
sometimes only one level of autovivification is desired.
Someone else might want at most two levels, such as when
working with 2D arrays.
A debugger could be enhanced with an object that could
provide this level of checking. This debugging
object would contain a pointer to a variable whose
autovivification is being monitored.
Perl's debugger hooks could check
autovivification constraints on
a line-by-line basis at run-time.
After the program starts working, the
run-time checking could easily be turned off.
This is the sort of problem that I have trouble debugging
with print statements, but I can easily debug with
the ptkdb debugger. I just put the hash in the watch
variable window and see how it grows. Or, if the data
structure being monitored is too large, I put something like
scalar(keys %myhash)
in the watch window.
I've already been flamed each time that I have
mentioned debuggers, so maybe we can skip that part
this time!
It should work perfectly the first time! - toma
Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
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:
- a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, 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, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
| |
For: |
|
Use: |
| & | | & |
| < | | < |
| > | | > |
| [ | | [ |
| ] | | ] |
Link using PerlMonks shortcuts! What shortcuts can I use for linking?
See Writeup Formatting Tips and other pages linked from there for more info.