CPython vs. Jython/JPython
D-Man
dsh8290 at rit.edu
Wed Nov 1 19:28:58 EST 2000
That's a very different coding style and sounds very interesting. Writning a project in multiple languages, but using each one naturally.
BTW, can stackless python be implemented in Java? I don't have any real experience but from reading the paper on it it seems that stackless python simply creates it's own python stack (on the C heap). Then the interpreter creates python frames and pushes them on the python stack, then returns from the C frames. It then executes the python frames independent of the C stack.
-D
On Wed, 01 Nov 2000 18:46:57 Arnold de Vos wrote:
| I don't post to the group much but I *have* to chime in here with a bouquet
| for JPython/Jython. The Java/Python synergy is unique, I know of nothing
| like it anywhere else. You just have to experience it.
|
| In the past, we've implemented a big app in CPython with C extensions and
| found it a very fast way to develop clean and reliable software. We will do
| more of that.
|
| But the mixed Java/Python environment is something quite different that I've
| never seen before. You don't write "java extensions" and "Python glue".
| You literally mix the two languages on a per-class or per-package basis.
|
| I wonder if this is approximately what Python 3000 could look like where
| type-safe and "dynamic-mode" modules are mixed?
|
| - Arnold
|
| ---
| Arnold deVos
| Langdale Consultants
| adv at langdale.com.au
|
|
|
| Guido van Rossum <guido at beopen.com> wrote in message
| news:cpd7gijt1d.fsf at cj20424-a.reston1.va.home.com...
| > You are all wrong. :-)
| >
| > The key difference between CPython and JPython is not speed, but
| > available extensions. CPython is useful as a glue language for C/C++
| > library code. There are lots of examples, e.g. NumPy, Tkinter, PIL,
| > and so on. JPython is useful as a glue language for Java library
| > code, e.g. Swing, JavaBeans, Jave 2 Enterprise Edition APIs, and so
| > on.
| >
| > If only CPython existed, linking to Java code would be very
| > cumbersome: you'd have to wrap a JVM in a CPython extension and take
| > it from there. If only JPython existed, linking to C/C++ code would
| > be impossible (in situations where JNI is not available) or at best
| > cumbersome (wrapping C/C++ code in JNI is much more painful than
| > writing Python wrappers, because of the JVM's garbage collector).
| >
| > It's sometimes possible to use C/C++ code from JPython (e.g. Finn Bock
| > did a wrapper for _tkinter) but rarely convenient. I haven't heard of
| > anyone linking to a JVM from CPython.
| >
| > Of course, the fact that there are two different implementations means
| > that an app that requires the use of both a library written in C/C++
| > and one written in Java is out of luck. Fortunately, most of the
| > standard extensions (e.g. regular expressions) are available in both
| > CPython and JPython.
| >
| > In the rare case where you need two non-standard extensions, you could
| > write your program as two communicating processes, one using JPython,
| > one using CPython.
| >
| > --Guido van Rossum (home page: http://www.python.org/~guido/)
|
|
| --
| http://www.python.org/mailman/listinfo/python-list
|
More information about the Python-list
mailing list