08-26-2005
perl global variables
Can someone give me "the lecture" on why you shouldn't make all your varables global when programming in perl. I have been doing this but I have heard that it is not a good practice.
10 More Discussions You Might Find Interesting
1. Programming
Hello dear BSD hackers,
how can I define and then make visible some variables that I define in KLD (BSD) for other part of Kernel or other KLD's ?
if i declare for example the varibale out of load-function of KLD , the name of this variable isn't export to symbol-table and the variable can... (0 Replies)
Discussion started by: int80h
0 Replies
2. BSD
Hello,
how can I define a global variables in KLD?
I would like to define some variables in my KLD and then would like to use them from other KLD.
Thanx (1 Reply)
Discussion started by: int80h
1 Replies
3. Shell Programming and Scripting
Guys, how can I define global variables in sorlaris...cause I lose the values outside the scope.
Rite now wat I do is,I redirect variable value to a file n then get it back outside the function...:o....theres obviously a better way of doing this...I now this is a basic question....but please... (2 Replies)
Discussion started by: qzv2jm
2 Replies
4. UNIX for Dummies Questions & Answers
Hi,
I hav created a script that calls a sub-script. In both the scripts i called the configuration file. Now i wanted to use a variable that should be used in both script and sub-script files. Actually, i wanted to return a file name and the return status to the script file from the sub-script.... (6 Replies)
Discussion started by: Swapna173
6 Replies
5. Programming
Hi,
is it possible in C to allocate dynamically a global variable?? (3 Replies)
Discussion started by: littleboyblu
3 Replies
6. Solaris
Hi Guys,
My requirement is I have file called /opt/orahome/.profile in non global zone.
PATH=/usr/bin:/usr/ucb:/etc:/usr/sbin:/usr/local/bin:/usr/openwin/bin:.
export PATH
PS1="\${ORACLE_SID}:`hostname`:\$PWD$ "
export PS1
EDITOR=vi
export EDITOR
ENV=/opt/orahome/.kshrc
export ENV... (1 Reply)
Discussion started by: vijaysachin
1 Replies
7. Shell Programming and Scripting
Hi there.
I'm writing a function to which I want to pass a global variable. For some reason, it's ignoring the variable.
#!/bin/bash
#####################################
#Variable Declaration
#####################################
CURPATH=`dirname $0`
DEEP=$CURPATH/depth.txt
export... (4 Replies)
Discussion started by: mikesimone
4 Replies
8. Shell Programming and Scripting
I have made a script that requires another php script for functions.
I need a way so that the required script can read and write the main script's variables.
Best Regards, John Wei
---------- Post updated at 08:54 AM ---------- Previous update was at 08:40 AM ----------
Sorry Guys, EDIT: my... (1 Reply)
Discussion started by: johntzwei
1 Replies
9. Shell Programming and Scripting
Hello.I have been trying to solve the following problem, but to no avail. If anyone could please give me some indications, or anything, it would be amazing.
A C source program and a type name are given. Determine from source,
the list of the global variables having the given type.
For each... (5 Replies)
Discussion started by: Susan78
5 Replies
10. UNIX for Dummies Questions & Answers
hi all,
i need a help for the following query.
Thanks in advance for your valuable time.
i have a main.pl file which has a global variable declared as below.
our myVar=0;
call first.pl script from the main.pl script.
print the value of myVar (the value is still 0 and not 10.)
i have a... (1 Reply)
Discussion started by: hemalathak10
1 Replies
LEARN ABOUT CENTOS
perl::critic::policy::variables::requirelocalizedpunctuationvars
Perl::Critic::Policy::Variables::RequireLocalizedPunctuaUserVContributed Perl DPerl::Critic::Policy::Variables::RequireLocalizedPunctuationVars(3)
NAME
Perl::Critic::Policy::Variables::RequireLocalizedPunctuationVars - Magic variables should be assigned as "local".
AFFILIATION
This Policy is part of the core Perl::Critic distribution.
DESCRIPTION
Punctuation variables (and their English.pm equivalents) are global variables. Messing with globals is dangerous in a complex program as
it can lead to very subtle and hard to fix bugs. If you must change a magic variable in a non-trivial program, do it in a local scope.
For example, to slurp a filehandle into a scalar, it's common to set the record separator to undef instead of a newline. If you choose to
do this (instead of using File::Slurp!) then be sure to localize the global and change it for as short a time as possible.
# BAD:
$/ = undef;
my $content = <$fh>;
# BETTER:
my $content;
{
local $/ = undef;
$content = <$fh>;
}
# A popular idiom:
my $content = do { local $/ = undef; <$fh> };
This policy also allows the use of "my". Perl prevents using "my" with "proper" punctuation variables, but allows $a, @ARGV, the names
declared by English, etc. This is not a good coding practice, however it is not the concern of this specific policy to complain about
that.
There are exemptions for $_ and @_, and the English equivalent $ARG.
CONFIGURATION
You can configure your own exemptions using the "allow" option:
[Variables::RequireLocalizedPunctuationVars]
allow = @ARGV $ARGV
These are added to the default exemptions.
CREDITS
Initial development of this policy was supported by a grant from the Perl Foundation.
AUTHOR
Chris Dolan <cdolan@cpan.org>
COPYRIGHT
Copyright (c) 2007-2011 Chris Dolan. Many rights reserved.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. The full text of this license
can be found in the LICENSE file included with this module.
perl v5.16.3 2014-06-09 Perl::Critic::Policy::Variables::RequireLocalizedPunctuationVars(3)