Just because speed has improved (as technology has improved, which is probably more a factor than anyone wants to admit) doesn't make JS fast or good. People are quick to say it's faster now, but it's still slower than anything else I know of.
People will fall on their swords for JS, but .Net overhead somehow never gets the same benefit of the doubt. :/
For interpreted languages, *Java* is actually king. C/C++ for compiled.
@jbauer @r There's actually a lot to be said for Java in terms of things like power consumption as well. There was a great article a few years ago rating languages in not only speed, but electricity required.
C++ of course rules the roost because it's fast and efficient by design and everyone knows it. Knowing it consumes the least energy of any language is really no surprise.
Link for your reading pleasure. :)
I haven't written Perl in ages (I was in school the last semester they taught it and I grabbed it because at the time Perl to PHP conversions were big). But you'd think an older language would be a little gentler on the resources.
TBF, I haven't written PHP in ages, either. I also unfortunately graduated the semester before they added AJAX. So that's a little ironic. XD
@bluestarultor @jbauer @r Not that surprising. The rule of thumb for language performance is that A) static beats dynamic, and B) anything you don't pay for upfront costs tenfold later (at best). Perl needs to start fast because it's designed for scripts, it's very dynamic, and it can't pay any costs upfront: perl isn't precompiled to bytecode and doesn't have time to do any warmup operations like Java does.
I never really considered HOW languages worked all that much, other than the differences between compiled, JIT compiled, interpreted, the bare basic explanation of .Net CLR and JVM, etc. They really don't delve into the mechanics in pure programming classes. They never really teach what's under the hood, you know? :)
If you want to get into language stuff (under the hood and design-wise), I recommend taking a look at The Lambda Papers, which encompass Sussman and Steele's ruminations on both developing a more elegant Lisp and making Lisp perform (which is a really hard problem: it's genuinely crazy that Common Lisp and Scheme perform as well as they do). This lead directly to the creation of Scheme...
@thoth @jbauer @r Absolutely, what you learn on your own time is valuable in this industry. I've advised younger programmers to put the languages they learned at home on their resumés. I've also taken what I learned at home for text parsing and text analysis to work and it gets people excited every time, even though we still haven't applied it to anything.
But being dangerous can be a good thing if you direct it right. :)