NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.
All the Perl that's Practical to Extract and Report
Stories, comments, journals, and other submissions on use Perl; are Copyright 1998-2006, their respective owners.
I'd take a patch (Score:2)
Reply to This
Re: (Score:2)
Your's? I see that Ruslan U. Zakirov maintains it and he/she has a bestpractical.com email address. Is this some strange alias or something? :)
Re: (Score:2)
Re: (Score:2)
So, next question then. Why do you walk the symbol table instead of consulting %INC? Is this in case someone diddles %INC? That seems a bit strange, so I'm assuming that you've seen something I've missed.
Re: (Score:2)
DB sub Foo::bar { 1}
Re: (Score:2)
Now I'm really confused. The snippet you have isn't valid Perl :/ What's the DB mean there? Something related to strange things with the debugger and the DB package? The rest I understand and think it's a non-issue (if you're manually creating a namespace, then the version check is irrelevant as you'll pick that up in code you already have).
Re: (Score:2)
It's not _manually_ created code I'm concerned about. It's runtime-generated code. Packages that are automatically instantiated by other code. M::V::R isn't just "what versions are loaded" but also "what's loaded", which can often be a very useful bit of debugging information itself.
Re: (Score:2)
Reminds me of another debugging tool I've thought about:
That would then walk through the package's symbol table and attempt to create a string that's equivalent to the code of a loaded package. It would likely be very fragile, though, hence using it as a debugging tool.
Re: (Score:2)