PyJVM – JVM in Python
pyjvm.org
pyjvm.org
Why can't someone just write for fun? Does everything now have to be "disruptive" and commercially viable?
I never finished. The only code I ever bothered decompiling was code I had written to test the decompiler. But I learnt a heck of a lot about how the JVM works, about Java byte code, and about some data structures and analysis. And I learnt exactly how the Java class file is defined.
It is something I'd highly recommend trying for your language of choice.
Something like this is great to learn how the JVM actually works, and can improve the way you code Java. I always found it incredibly boring to read language/vm specs but building something like this makes the abstract and obscure, concrete (at least for a programmer's brain)
If the author wanted to learn _and_ get publicity, a blog post or at least including a "why" section that says "just for fun" on the landing page would seem suitable to me.
There probably is some interesting motivation for doing this, it's just not clear what it is.
You mean one of github's default landing pages for projects? http://i.imgur.com/nQgmrE5.png
(shameless plug warning) When I created Py4J (http://py4j.sourceforge.net/), I wanted to decouple the two ecosystems as much as possible so that both could evolve independently. There is no jni, no re-implementation of bytecode or interpreter, just plain sockets working on linux, mac, windows and most versions of Python and Java.
EDIT: Also if it can run on Jython that would make a nice full circle. EEDIT: Looks like it requires Python 2.7 so this might not be the case (yet).
PyJVM --> Jython --> PyJVM --> Jython ...
It reminds me a bit of LISP interpreters that are mostly/entirely written in LISP.
Edit: The moderately less farcical versions don't seem to mix the lobster and truffles.
http://socalpls.org/slides/zippy.pdf
It is a performant implementation of Python3 on the JVM.
Why? It's dead, accept it.
Python 2.7 is far from dead, and the changeover to Python 3 seems to be similar to Perl5->Perl6 -- or, more to the point, not happening at all.
>Short version: Python 2.x is legacy, Python 3.x is the present and future of the language
>Python 3.0 was released in 2008. [6 years ago] The final 2.x version 2.7 release came out in mid-2010 [4 years ago], with a statement of extended support for this end-of-life release. The 2.x branch will see no new major releases after that. 3.x is under active development and has already seen over four years of stable releases, including version 3.3 in 2012. The next release is the upcoming Python 3.4 in early 2014. This means that all recent standard library improvements, for example, are only available by default in Python 3.x.
https://wiki.python.org/moin/Python2orPython3
There is still software for DOS around, and DOS is still dead.