in reply to I just can't figure this out...

W/r/t the question about what's $I{F}{op}--are you familiar with multidimensional data structures? This looks to be a hash of hashes, in this case. Perl implements multidimensional data structures using references--so you have a regular hash, %I, with a key called "F"; and the value of that key is a reference to another hash (a reference is a scalar, and a hash value can only be a scalar, so that works out).

So you could say:

my $hash_ref = $I{F};
Now you've got a hash ref in $hash_ref, and you can dereference it to see what it holds. You could now say:
my $op = $hash_ref->{'op'};
So, if we put those together and eliminate the temporary variable, we get
my $op = $I{F}->{op};
which is the same as
my $op = $I{F}{op};
because Perl lets you eliminate the dereferencing arrows between brackets subscripts.

Take a look at perlref, perldsc, and perllol.