News for hackers. Stuff that matters.
Re:Javascript is good enough by ahoyhere on Saturday January 31, 2009 @10:39PM (#460476)
JavaScript itself is a great language, not just good enough. It's got higher order functions, closures, prototype-based object definitions and all sorts of other lovely, lovely things.

If it's not the language you like off the bat, you can redefine the core objects until it is.

Beautiful!

For people think it's like MS-DOS, I can only assume that they think so because they don't understand it truly as a language. Pure JavaScript is a thing of beauty.

The DOM API that most browsers expose (as per spec -- and worse, as not per spec) is, on the other hand, a steaming pile of crap.

The DOM API has gotten more consistent and less crap over time, but its design is still ugly and inefficient (and browsers still differ in annoying ways).

Which, of course, explains the huge success of Prototype (which redefines the whole language into a more Ruby-like one), and jQuery (which hides the DOM stuff for people who want to avoid it).

I'd estimate that now, JavaScript has the most developer attention of any "upstart" language -- and that means it'll get even more exciting in the future.

Granted, as somebody who's given training courses & talks on JS, written an (unpublished) JS book for O'Reilly (damn them), and recently cowritten a JavaScript performance ebook (http://jsrocks.com) with my husband Thomas Fuchs (the script.aculo.us dude), I might be biased, but, such is life. ;)

As an aside, I don't know ANYONE who knows both ActionScript and JavaScript and prefers Adobe's to the real thing. (Other than the post author. But I don't know him.)

Re:Javascript is good enough by enneff on Sunday February 01, 2009 @02:25AM (#460663)
> JavaScript itself is a great language, not just good enough. It's got higher order functions, closures, prototype-based object definitions and all sorts of other lovely, lovely things.

Exactly, and these things let you use it in any way you like. If you're frustrated with and feel limited JavaScript, then you just plain don't understand it.