Beefy Boxes and Bandwidth Generously Provided by pair Networks
Just another Perl shrine

Re: my $var; vs. use constant VAR = '';

by arturo (Vicar)
on Apr 27, 2001 at 01:06 UTC ( #75908=note: print w/replies, xml ) Need Help??

in reply to my $var = ''; vs. use constant VAR => '';

From perldoc constant

"These constants do not directly interpolate into double-quotish strings, although you may do so indirectly."

There might be a bit of a performance hit when using the constants approach, but I doubt it's *huge* and you are protected from accidentally altering your constants.

"edited" by (arturo) hisself ... sorry, I thought I'd broken the lines up correctly and it showed up fine in my browser.

Replies are listed 'Best First'.
Re: Re: my $var; vs. use constant VAR = '';
by MeowChow (Vicar) on Apr 27, 2001 at 01:12 UTC
    Actually constants are faster, since use constant simply turns them into constant subs (for versions of Perl that support this):
    sub CONST_NAME () { 'value' }
    IIRC, this form is optimized by the Perl compiler such that there are no hits to the symbol table in dereferencing the value; it would be as if you typed the constant value in as a literal, much like a preprocessor #DEFINE macro.

    update: Looks like I was wrong, my variables are actually a hair faster than both constants and even literal values.

                   s aamecha.s a..a\u$&owag.print

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://75908]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others studying the Monastery: (8)
As of 2019-05-27 11:30 GMT
Find Nodes?
    Voting Booth?
    Do you enjoy 3D movies?

    Results (156 votes). Check out past polls.