I have to write an article about this topic for WebReference.com so here is the stream of conscious thinking on this. JavaScript is by far my favorite scripting language despite all the mistreatment by my favorite software company. Rexx was my previous choice; but when the market failed to pickup Watcoms great Visual Rexx ten years ago – I knew the writing was on the wall.

JavaScript is very nicely othogonal to Java, C#, C/C++. It has a typeless, variant-like variables; used to have case insentivity, and has the easiest methods of defining arrays, objects, functions and function arguments in the business. Yes its switch statement is antediluvian as is its lack of for each clause and associative arrays. But its compact structure, relatively fast execution, and fairly uniform implementation make it very attractive in its original domain – the scripting language for the Web.

But JavaScript has 3 major problems. First, no uniform mechanism for handling database connections and operations. No uniform mechanism for handling XML and Web Services. And no standards body vigorously shepherding its rapid expansion into many new roles such as a cross platform scripting language in the case of Adobe, Macromedia, and half a dozen other vendors . Or as an embedded processing script in the case of a startup I should not be talking about.

The problem is that JavaScript is expanding like a weed with ActionScript use in Flash, JScript in Microsoft InfoPath and Acrobat JavaScript from Adobe and at least 4 dozen other implementations. All are like C/C++ versions – generally understandable; but really mutually incompatible. For example, the object definitions for XML processing in all three of these cases are, shall we say – distinctive.

Jython is a combination of the Python scripting language with Java. It is cross platform just like JavaScript. Thus Jython runs in desktop and server OS environs from Windows through Mac to many flavors of Unix and Linux. Its syntax is precise and fairly simple. It works in command line, GUI, and Web modes. But most important of all – because Jython calls on the huge and very standard Java libraries it is much less likely to become as Balkanized as C/C++ have already done and JavaScript is hell bent for leather to do right now.

Oh and my favorite software company from the Pacific Northwest …. it has not gotten to mess it up ….. yet.

One Response

  1. Though some of your comments are ameliorated via Judoscript, http://www.judoscript.com/ which takes much of the good of Javascript/ECMAscript, and runs it in java, similar to jython. It uses JDBC to connect to dbs, XML and web services are handled in a similar fashion to Java (with some syntactic sugar), and as the author is talking about making the language more and more similar to ECMAscript, it does follow a standards body.

    Jython has some great features, and though I am new to it, I do like it. But when I really need to get work done quickly, I turn to Judoscript.

    Perhaps I just need more jython practice.