in reply to Re: can't modify anonymous hash ({}) in scalar assignment
in thread can't modify anonymous hash ({}) in scalar assignment

Yes, I apologize. I wrote the post and then deleted lines of code I had inserted for debugging but were not necessary for this. The line you mention was the problem one.

And you were right about the syntax, too!. I thought => was for pointers and -> was for subs. I guess I should google that.

Thanks!

  • Comment on Re^2: can't modify anonymous hash ({}) in scalar assignment

Replies are listed 'Best First'.
Re^3: can't modify anonymous hash ({}) in scalar assignment
by Anonymous Monk on Jul 26, 2010 at 16:06 UTC
    Comma Operator
        The "=>" operator is a synonym for the comma except that it causes its
        left operand to be interpreted as a string if it begins with a letter or
        underscore and is composed only of letters, digits and underscores.
    
    The Arrow Operator
    
        ""->"" is an infix dereference operator, just as it is in C and C++. If
        the right side is either a "[...]", "{...}", or a "(...)" subscript,
        then the left side must be either a hard or symbolic reference to an
        array, a hash, or a subroutine respectively. (Or technically speaking, a
        location capable of holding a hard reference, if it's an array or hash
        reference being used for assignment.) See perlreftut and perlref.
    
        Otherwise, the right side is a method name or a simple scalar variable
        containing either the method name or a subroutine reference, and the
        left side must be either an object (a blessed reference) or a class name
        (that is, a package name). See perlobj.