in reply to Re^3: Using grep and glob to find directories containing file
in thread Using grep and glob to find directories containing file
I still think something is wrong...
If I do something like:
In other words, I can understand why 'glob' is stateful when it is the loop iterator. But it makes no sense (to me) (and seems wrong) for it to be stateful when it is not the iterator. Because then unwinding a loop give a different answer.
If I do something like:
and then run:mkdir dir1 dir2 touch dir1/f{1,2}
I get 'dir1' printed 3 times (NOT 4). But if I unwind the loop:foreach (1,2,3,4) { print "dir1\n" if glob("dir1/f*"); print "dir2\n" if glob("dir2/f*"); }
Then I get 'dir1' printed 4 times!!!print "dir1\n" if glob("dir1/f*"); print "dir2\n" if glob("dir2/f*"); print "dir1\n" if glob("dir1/f*"); print "dir2\n" if glob("dir2/f*"); print "dir1\n" if glob("dir1/f*"); print "dir2\n" if glob("dir2/f*"); print "dir1\n" if glob("dir1/f*"); print "dir2\n" if glob("dir2/f*");
In other words, I can understand why 'glob' is stateful when it is the loop iterator. But it makes no sense (to me) (and seems wrong) for it to be stateful when it is not the iterator. Because then unwinding a loop give a different answer.
|
---|
Replies are listed 'Best First'. | |
---|---|
Re^5: Using grep and glob to find directories containing file
by 7stud (Deacon) on Feb 03, 2013 at 18:03 UTC |
In Section
Seekers of Perl Wisdom