Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl-Sensitive Sunglasses

Re: Re: Re: Location of 'use' statements

by demerphq (Chancellor)
on Apr 19, 2003 at 11:30 UTC ( #251632=note: print w/replies, xml ) Need Help??

in reply to Re: Re: Location of 'use' statements
in thread Location of 'use' statements

Yep, Data::Dumper for example will complain (under -w) about printing to an unopened file handle if you say

Actually its perl that complains here. The warning is provided because perl reads

print Dumper $quux;


use IO::File; Dumper->print($quux);

when 'Dumper' is an unknown bareword. Personally I always disambiguate print statements in some way just because ive been bitten a few times.

Incidentally in this case its not much harder (and often desirable) to replace that with

print Data::Dumper->new([$quux],['quux'])->Dump(),"\n";

I say desirable, and use the long winded ->new() form because now we can easily add stuff in the middle:

# we have large cyclic structures: disable pretty indent, enable purit +y mode. print Data::Dumper->new([$quux],['quux'])->Purity(1)->Indent(1)->Dump( +),"\n";


<Elian> And I do take a kind of perverse pleasure in having an OO assembly language...

Replies are listed 'Best First'.
Re: Re: Re: Re: Location of 'use' statements
by djantzen (Priest) on Apr 19, 2003 at 20:57 UTC

    Actually its perl that complains here.

    That's what I meant to say ;^) Normally when I'm writing new code at some point I end up wanting to Dumper something, and so recently I've just started adding that automatically to the top of the file. My new mantra is use strict; use warnings; use Data::Dumper, and then after development I'll remove the latter.

    I'm glad you posted this because when I read # we have large cyclic structures: disable pretty indent, enable purity mode I realized that my normal use of Dumper in the application I'm writing has been unnecessarily difficult to read. I've got a data structure where trees hang off of digraph nodes and a dump of any element fills the entire screen from side to side -- your version is much easier on the eyes, thanks!

    "The dead do not recognize context" -- Kai, Lexx

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://251632]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others perusing the Monastery: (5)
As of 2018-05-22 12:36 GMT
Find Nodes?
    Voting Booth?