It’s just data

Comparing Pythons

Comparison of various Python implementations for conformance.

Methodology

Results

test cpython piethon past pirate jython ironp
arg_order pass pass FAIL pass* pass* pass*
assignment pass pass FAIL pass pass pass
augmented_assignment pass FAIL FAIL pass pass FAIL
bitwise pass FAIL pass pass pass pass
break pass pass FAIL pass* pass* pass*
compare pass pass FAIL FAIL FAIL pass*
continue pass pass FAIL pass* pass* pass*
def pass pass FAIL pass pass pass
dict pass FAIL FAIL pass pass pass
euclid pass pass FAIL pass pass pass
except_called_raise pass pass FAIL pass pass pass
for pass pass FAIL pass* pass pass
for_else pass pass FAIL pass pass pass
generator pass pass FAIL pass pass FAIL
global pass FAIL FAIL pass pass pass
if pass pass pass pass pass pass
if_expr pass pass pass pass pass pass
instance pass FAIL FAIL pass pass pass
iterator pass FAIL FAIL pass pass pass
lambda pass pass FAIL pass pass pass
lambda_anonymous pass FAIL FAIL pass pass pass
lexical_scope pass FAIL FAIL pass pass FAIL
listcomp pass FAIL FAIL pass pass pass
logic pass FAIL FAIL pass* pass* pass*
math pass pass pass pass pass pass
methods pass pass FAIL pass pass pass
microthreads pass FAIL FAIL FAIL pass* FAIL
microthreads_more pass pass FAIL FAIL pass* FAIL
minimal_function pass pass FAIL pass pass pass
multi_return pass pass FAIL pass pass pass
nested_call pass pass FAIL pass pass pass
nested_subscripts pass pass FAIL pass pass pass
no_return pass pass FAIL pass pass pass
pass pass pass pass pass pass pass
print pass pass pass pass pass pass
range pass pass FAIL pass pass pass
recursion pass pass FAIL pass* pass* pass*
return_tuple pass FAIL FAIL FAIL pass pass
shift pass FAIL pass* pass* pass* pass*
simple_listcomp pass FAIL FAIL pass pass pass
simplemath pass pass pass pass pass pass
try_except pass pass FAIL pass pass pass
tuple pass pass FAIL FAIL pass pass
unary pass FAIL FAIL FAIL FAIL pass*
unpack_list pass pass FAIL pass* pass* pass*
while pass pass FAIL pass* pass* pass*
while_else pass pass FAIL pass pass pass

It would have been helpful to include the total pass/fail figures for each implementation.

Posted by Aristotle Pagaltzis at

Interesting/impressive that the only tests that Jython fails are the two cases where it's showing it's pre-2.2.1 roots and using 1/0 rather than the later True/False.

Posted by Gwyn Evans at

Looks like a lot of the piethon converter's failures are pretty simple things--python ops that haven't been implemented but shouldn't be much trouble. (Though whether that masks other problems is another question) I may have to take a poke at it later if I get some time.

Posted by dan at

"the only tests that Jython fails are the two cases where it's showing it's pre-2.2.1 roots"

Make that "pre-2.3".

Jython 2.2 is a 2.2 implementation, and CPython 2.2 also "fails" the boolean tests.

Posted by Fredrik at

Sam Ruby: Comparing Pythons

[link]...

Excerpt from del.icio.us/tag/python at

Sam Ruby: Comparing Pythons

Comparison of various Python implementations for conformance....

Excerpt from Discreet Blogmarks at

Comparativa entre implementaciones Python

En este post, Sam Ruby muestra una comparativa de las distintas implementaciones Python.De lectura muy aconsejable para los interesados en el estado de desarrollo de estas variantes....

Excerpt from PythonHispano - Portal sobre Python para la comunidad hispana - at

FWIW, I patched up some of the errors from pie-thon and put them into CVS. Some things still fail, but fewer of them.

Posted by dan at

I think there must be something wrong with some of your results. I'll pick out one example: I see that Jython is passing the generator test. Yet I'm fairly sure that generators have not been implemented in Jython. So I tried it... and it sure fails for me! Could you explain? (CC me by mail if you would...)

Posted by Michael Chermside at

C:\tmp>java -cp c:\jython\jython.jar org.python.util.jython test\generator.py
0 1 done

C:\tmp>java -cp c:\jython\jython.jar org.python.util.jython -v
import: 'exceptions' as org.python.core.exceptions in builtin modules
Jython 2.2a0 on java1.4.2_02 (JIT: null)
import: 'site' as c:\jython\Lib\site$py.class
import: 'sys' as sys in builtin modules
import: 'os' as org.python.modules.os in builtin modules
import: 'javaos' as c:\jython\Lib\javaos$py.class
import: 'java' as java package
import: 'File' as java class
import: 'javapath' as c:\jython\Lib\javapath$py.class
import: 'System' as java class
import: 'UserDict' as c:\jython\Lib\UserDict$py.class
import: 'sitecustomize' not found (=> ImportError)
Type "copyright", "credits" or "license" for more information.
>>>
Posted by Sam Ruby

at

PyGenerator.java

this.closure = closure;

:)

Posted by Robert Sayre at

Links: 20041006

Python Programming FAQ (python) (programming) (faq) Thirty-seven Reasons I Love Ruby (ruby) (programming) Instiki (ruby) (wiki) Practices in Directory Groups (groups) (i2) (ldap) (mace-dir) (middleware) (practices) (paper) Straw man architecture...

Excerpt from devclue at

Add your comment