Novel Thoughts on Scripting and Languages

Mike Meyer mwm at
Wed Jan 8 18:12:23 CET 2003

judoscript at (James Huang) writes:

> Mike Meyer <mwm at> wrote in message news:<x7wulgwa1g.fsf at>...
> > judoscript at (James Huang) writes:
> > 
> > > > > Have you ever thought about scripting more areas, such
> > > > > as SQL, XML, EJB, SGML, HTTP, E-mail and GUI, the way you
> > > > > script OS commands, all at once? Think about it!
> > > > I have. I've written in it. It's called Rexx. Where JudoScript is as
> > > > much a multi-target scripting langauge as this article is novel, Rexx
> > > > is the real McCoy.
> > > Admittedly I'm no Rexx person.
> > In that case, you've missed the first true multitarget scripting
> > language, and it's only been around for 20 years now. I'd say you
> > failed to check on prior work properly.
> You've mentioned multi-"target" twice now, and I need to do some
> research on that. JudoScript is a tool for Java, so I checked Java
> scripting languages and felt comfortable.

That's obviously pretty short-sighted. Basically, Rexx lets you talk
to any Rexx-enabled application the same way most Unix scripting
languages talk to the shell. The result is very powerful - once you
get enough applications Rexx-enabled.

> > As others have mentioned, you can do this kind of thing with VBA. On
> > Unix, you can do it with CORBA. The real measure of the power of this
> > approach is how many applications will support what you're doing.
> Actually it is not VBA or CORBA, it is object model.

CORBA provides you with an object model. When scripting a
CORBA-enabled application, you manipulate objects in the
application. And you can do it from any language that has CORBA
support, which is most of the ones I'm familiar with - including Java.

> In Java, each object is a (mini) application. Any application is a
> collection of objects. We don't even need a command-line interface for
> that matter to use the magic of Rexx, do we? That's why Java is a
> dream platform not only for scripting, but also programming as well!

Jave doesn't do multiple inheritance, which makes it far from a "dream
platform" for programming as far as I'm concerned. I'd recommend you
check out Bertrand Meyer's "Object Oriented Software Construction" for
the reasons why not doing MI is a bad thing. Actually, I recommend
that book to anyone who does or wants to do OO programming.

> > How hard is it to add judoscript support to a random application, and
> > how much overhead does it add? Do I have to embed a java vm in the
> > thing to use it? What advantage does it give me over doing a CORBA
> > interface - see <URL: > for a
> > bit on that - to make up for the loss of the ability to write scripts
> > in any language with CORBA support? On Windows, you get to do the same
> > comparison with ActiveX or whatever MS is calling their distributed
> > object technology this month.
> I sensed you are not quite into Java, but unfortunately I am all Java
> now. I thought IBM is pretty big on Java, perhaps it's just because
> IBM is big that makes IBM-Java look big?

You failed to answer the questions, and these as well:

> > Unix, you can do it with CORBA. The real measure of the power of this
> > approach is how many applications will support what you're doing.

> > For instance, you talk about scripting in SQL. How many databases does
> > it work with, and which ones?

So I get the impression that Judoscript is only about scripting Java
objects, and not about scripting applications. That means it's limited
to applications written in Java, which is pretty pittiful. That also
means that JudoScript differs from Jython and similar Java tools only
in syntax.

Personally, I'd rather *not* learn another language just to script my
objects. What little Java programming I've done I used Jython for
scripting because I already knew Python. If I were going to get
serious about Java, I'd look for a Java scripting tool that let me use
Java syntax for everything.

Mike Meyer <mwm at>
Independent WWW/Perforce/FreeBSD/Unix consultant, email for more information.

More information about the Python-list mailing list