Let me get this straight:
- current directory is ~/zyx
When i execute moo.pl, . is set to ~/zyx, so:
- use cow means ~/zyx/cow.pm
- use lib 'cow' means ~/abc/cow.pm
Did i get it right that, basically, there is a difference between the "current" directory and the directory of the pl file. Or, put another way, if i keep all my project files in the same directory, like we do during development, and the directory may change, and the directory i execute it from may change, "use lib" will work "as expected".