As your program grows in size, the lack of strong typing basically kills your ability to handle a very large program and so you don't find the million-line Perl program
Second, the reason that there aren’t many million-line Perl programs is that the people who are capable of writing and managing million-line Perl programs have better ways to organize their projects than glomming a million lines of Java into a single shared-everything instance. That’s setting aside the qualities of encapsulation and abstraction that Java-the-language doesn’t have, preferring instead to push that problem to tool vendors and AbstractFactoryFactoryInjectors which consume vast swaths of XML to get around Java’s static code fetish. I can only imagine how much larger the Java code would be without all of those XML files.
I was always baffled with Java folks love affair with XML until I realized it was just a crutch to make up for a lack of map and array literals in the language.
Another quote from the InfoWorld article:
Java is not the slowpoke of old days and performance now matches or exceeds applications developed in C
I found that interesting that only 13 years after being released Java is finally on par with C performance, particularly given that some people believe that a garbage collected language should be faster than a non-garbage collected language.