in reply to Conventional filename suffixes
Source programs are typically .pl or w/no extension (update: or .cgi), and modules will have the .pm extension. For modules, it matters and they schould always be .pm .. for scripts, it really doesn't matter. Personally, i usually name scripts foo.pl so i can at a ls glance see it's perl, but when i "install" it somewhere for real use, i will rename it and drop the extension and make sure it's executable. Depends if i want to run it like perl foo.pl or ./foo
as far as finding scripts, i would do a combination of searching for '.pl' and using the file command.. e.g. file /usr/bin | grep -i perl
as for associating files un linux/unix, if a text file is executable, it's not the extension that matters but what's one the first line of the file in the she-bang line (e.g. #!/usr/bin/perl).