Rethinking the Java Curriculum: Goodbye, HelloWorld!
Subject:   how about jython then?
Date:   2002-08-23 01:51:49
From:   davidccrane
I'll throw my favourite language into the bag. Jython seems to ddress a few of the issues the author and other commentators have raised so far:

- python is a clean, simple language, designed to be easy to learn
- it can be run without any IDE, it's portable (this applies to both 'proper' Cpython and to jython)
- no main() method. If you wanbt to do something really simple like Hello World, you write it as a functional language: the python/jython listing for Hello World is simply:

print "Hello World"

- you can then graduate onto using OO techniques when required, starting with defining a class and then manipulating it via top-level functions, then on to getting several objects talking to each other
- it can be run interactively : great for learning, quickly testing things out, etc.
- if you teach jython, then you can familiarise your students with any parts of the java APIs that you like, and then move them on to native java coding gradually
- easy to install, I've set it up on various Linux and Windows without any problems.

Downside is that the syntax for python and java are not that similar, but there are other java scripting language implementations e.g. Netscape's Rhino, that offer similar benefits with a more C-like syntax. (I'm recommending jython specifically because its the one I know.)

Jython can be found at

Dave Crane

Full Threads Oldest First

Showing messages 1 through 1 of 1.

  • how about jython then?
    2002-08-23 06:50:53  eallen [View]

    Jython is great. Another big advantage of it is that Jython classes compile to ordinary Java class files, so you can subclass Java classes with Jython classes and conversely. Also, Jython has (a limited form of) lambda expressions and other very useful language features.

    We considered using Jython for the read-eval-print-loop in DrJava, but ultimately we decided to use DynamicJava instead. The only reason we decided not to use Jython was because the differences in syntax would prevent students from lifting into their Java programs expressions and statements typed interactively. That's too bad, because in many ways, Jython syntax is cleaner. For instance, simple lambda expressions can be added to GUI elements as action listeners (it's very convenient).

    -- Eric