@var is an array $var is a scalar $var[0] is also a scalar even though is an array element. @var[0] is an array which contains more array elements, but in this case it contains just a single element.
To create an array slice with more elements, you'll need something like @var[0 .. n] You need to always use $ for scalars and @ for arrays. Teddy, Teddy's Center: http://teddy.fcc.ro/ Email: [EMAIL PROTECTED] ----- Original Message ----- From: "Lance Murray" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Wednesday, December 18, 2002 7:02 PM Subject: Confusion on @array vs $array[] vs $array Hello: I have been fairly confused on the intermixing of array naming standards. If I understand correctly, the @array syntaxt is used to refer to the whole array, while $array[n] is refered to specific elements. In my thinking, it would have been less confusing to use @array[n] to address specific elements, but Perl complaines bitterly when warnings &/or strict is enabled. Is the rational for the "$"array[] character for identifying "@"array elements due to the fact that the $ character has special meaning (denotes variable or element) within double quoted text, while the @ sign has no special meanign within double quotes. Anyway, perhaps one of you syntactical thought police could give me some insights to the rational. I find it very confusing that the $ and @ characters are supposed to be used interchangeably to denote arrays, particularyly when I'm trying to fathom the relation to other issues such as scalar or list context. As I recall, hashes arso use % and @ interchangeably. Thanks, Lance ---------------------------------------------------------------------------- -- #!/usr/bin/perl print "Lance Murray, Information and Communications Systems\n", # department "The Church of Jesus Christ of Latter-Day Saints\n", # employer and religion "(801) 240-6583, murraylk\@ldschurch.org\n\n", # work phone number and email "\"Better to do a little well than a lot poorly (Socrates)\"\n"; # philosophy @P=split//,".URRUU\c8R";@d=split//,"\nrekcah xinU / lreP rehtona tsuJ";sub p{ @p{"r$p","u$p"}=(P,P);pipe"r$p","u$p";++$p;($q*=2)+=$f=!fork;map{$P=$P[$f^or d ($p{$_})&6];$p{$_}=/ ^$P/ix?$P:close$_}keys%p}p;p;p;p;p;map{$p{$_}=~/^[P.]/&& close$_}%p;wait until$?;map{/^r/&&<$_>}%p;$_=$d[$q];sleep rand(2)if/\S/;print ---------------------------------------------------------------------------- -- This message may contain confidential information, and is intended only for the use of the individual(s) to whom it is addressed. ============================================================================ == ---------------------------------------------------------------------------- ---- -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]