Having worked w/Perl, Java/JSP, and ASP/ASP.NET, I can sincerely state the following -
Java and/or ASP are better because Sun/IBM/Microsoft have multi-million dollar marketing budgets that say they're better.
It's not unusual for developers to be passionate about languages and prejudiced in favor of or against various languages. I guess this is a side-effect of so many developers being INTJs. ;)
Bold generalizations follow, but I try to make them with an open mind and sense of fairness:
- A Perl app can be written much faster than any comparable Java/.NET app when written by developers of comparable skill.
- A Perl app will tend to run a little slower than a comparable Java (1.3 +)/.NET app when written by highly skilled developers.
- Its anybody's guess how the performance of apps will compare when written by relatively low-skilled developers. Java and .NET have many performance traps for novice/indifferent developers. If I had a dollar for all the string-concatenation in loop problems, inappropriate use of reflection problems, poor use of the database problems, etc... that I've seen w/ Java and .NET, I'd have at least a mortgage payment. And I'm only counting code written by 'professional' developers.
- Code quality has very little difference. Perl may even have an edge in many cases since it's so easy to get Perl to do what you want it to do w/o funky work-arounds or extra reams of code.
- Maintainability is harder to assess. It can be hard for a team of developers to work with Perl, but its hard for a team to work in any language. Communication and documentation are what counts, here. Perl can be a 'Write-Once, Run-Only' language when it's written to be such, but it can be very understandable when written to be such.
The performance, quality, and maintainablity of any application is going to spring much more from the skill, talent, dedication and self-discipline of the developer(s) and the amount of quality design time that is put in than it will from the language/platform choice. Developers can produce something beautiful with Perl, Java, or .NET. They can also produce slow-running, unmaintainable crap with any of the three.
When someone asks me 'Why do you use Perl? Java or ASP is much better.', I ask them 'How did you come to that conclusion? Have you used both Perl and <language/platform x>?'
80 percent of the time the response is "No", possibly with some baloney about how CGI has to spawn a new process or "Perl is too hard to understand" or "Perl looks like line noise" or some hooey along the same lines.
Have no doubt that I like Perl, and I like it alot. Putting more tangible qualities aside, writing Perl is a lot more fun than writing Java or .NET. And fun matters when you spend all day coding. Perl values my time more. Perl doesn't make me sweat over the mundane. Perl is easy to learn yet difficult to master. Perl helps make the journey as enjoyable as the destination.
Hanlon's Razor - "Never attribute to malice that which can be adequately explained by stupidity"
Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
Read Where should I post X? if you're not absolutely sure you're posting in the right place.
Please read these before you post! —
Posts may use any of the Perl Monks Approved HTML tags:
You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
- a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
Link using PerlMonks shortcuts! What shortcuts can I use for linking?
See Writeup Formatting Tips and other pages linked from there for more info.
| & || & |
| < || < |
| > || > |
| [ || [ |
| ] || ] ||