Actually Perl doesn't play so well at the other end of the programming spectrum either - 1,000,000 line applications would be somewhat difficult to manage in Perl. And there are real applications that are 1,000,000 lines long because they have to be, not because they are so poorly written that in a realTM language like Perl they would be only 10,000 lines, but because that is a fair representation of their required complexity. Even 10,000 lines of Perl would take a bit of taming. :)
This is completely contrary to my experience. A million lines of code in ANY language takes quite a bit of process to do successfully. I should know - I've written and managed 2.2M lines of code by myself. As for 10k lines of code (in any language) - that's quite easily handled by 1-4 programmers.
As for complexity of Perl applications - 90% of every Perl application you, personally, will ever really want to write is either already on CPAN or will be in the next year. So, really, you're only writing 10% of what you would have to write in any other language. Couple this with the 10-1 LOC difference between Perl and most other languages and my 10KLOC is your 1MLOC. All of a sudden, it's not so hard to manage 1MLOC.
My criteria for good software:
- Does it work?
- Can someone else come in, make a change, and be reasonably certain no bugs were introduced?