Introduction To Jython
Introduction To Jython
Frank Wierzbicki
note: some slides borrowed from Jim Baker
Me
• Java developer for 10+ years
• Python/Jython developer for 10+ years
• Jython contributor for the last 5 years
• Jython project lead for the last 3 years
• Sun Microsystems hired me to work full-
time on Jython about 4 months ago
What is Python?
• A programming language that is:
• Elegant and Robust
• Easy to pick up: readability is at the
forefront of the language design
• Easy to use, yet powerful
• The fastest growing language of 2007
according to http://www.tiobe.com
What is Jython?
def hello(name):
print “hello”, name
Demo: Jython basics
Project Status
• Jython 2.2.1 is the production version
• Jython 2.5 alpha is out
• 2.5 Unit test compliance
• 199 passing
• 58 fails, but most are minor
• Active group of 8 committers
Applications
Java Platform
no GIL
• NumPy BlazeDS
Collaboration
• Major apps
• Implementations - CPython, PyPy
• Other Java dynamic languages - JRuby
• Tooling support
• Java Virtual Machine development
• Academic research - gradual typing
JRuby support in NB
Tooling Support
• IDEs
• Especially integrated packaging - simple,
standardized deployment options
• Code completion
• Possibilities of refactoring, etc.
• Typing?
JRuby support in NB
Tooling Support
• IDEs
• Especially integrated packaging - simple,
standardized deployment options
• Code completion
• Possibilities of refactoring, etc.
• Typing?
JRuby in NB
one-shots get us
greenlets
Java 7 Support
• Alice
• pydoclet
Where to find out
more
• http://www.jython.org
• http://wiki.python.org/jython
• http://fwierzbicki.blogspot.com
• Twitter: fwierzbicki
• http://www.python.org
• http://nbpython.dev.java.net