SPUG: -MO=Deparse; what it is?
Doug Beaver
dougb at scalar.org
Sat Jan 29 18:10:43 CST 2000
On Sat, Jan 29, 2000 at 02:57:32PM -0800, Tim Maher/CONSULTIX wrote:
> (E-)?SPUG-ticians,
>
> In a Perl Beautification discussion I had with somebody,
> the following -MO=Deparse business came up. Does anybody
> know what this is? (My O'Reilly bookshelf seems mute on
> the subject, and the person who brought this up has long
> since "gone out of scope" (mine, not his)).
The classes under B:: let you get at the internals of the perl compiler
(I think B is supposed to stand for Backend). If you have tchrist's
pmtools package (http://language.perl.com/misc/pmtools-1.00.tar.gz), you
can see what they all do:
% pminst ^B:: | xargs pmdesc
B::Deparse (0.56) - Perl compiler backend to produce perl code
B::CC - Perl compiler's optimized C translation backend
B::Debug - Walk Perl syntax tree, printing debug info about ops
B::Showlex - Show lexical variables used in functions or files
B::Bblock - Walk basic blocks
B::Bytecode - Perl compiler's bytecode backend
B::Stackobj - Helper module for CC backend
B::Xref - Generates cross reference reports for Perl programs
B::Lint - Perl lint
B::Asmdata - Autogenerated data about Perl ops, used to generate
bytecode
B::Assembler - Assemble Perl bytecode
B::Disassembler - Disassemble Perl bytecode
B::Terse - Walk Perl syntax tree, printing terse info about ops
B::C - Perl compiler's C backend
(This list is from 5.00503, which is what I have installed at home.)
Doug
--
Smithers: I'm afraid we have a bad image, Sir. Market research shows
people see you as somewhat of an ogre.
Burns: I ought to club them and eat their bones!
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list at pm.org PROBLEMS: owner-spug-list at pm.org
Seattle Perl Users Group (SPUG) Home Page: http://www.halcyon.com/spug/
SUBSCRIBE/UNSUBSCRIBE: Replace ACTION below by subscribe or unsubscribe
Email to majordomo at pm.org: ACTION spug-list your_address
More information about the spug-list
mailing list