intertwingly

It’s just data

Python on Parrot test status


rubys@rubix:~/pirate$ python PirateTest.py
.............................................................
----------------------------------------------------------------------
Ran 61 tests in 17.008s
 
rubys@rubix:~/parrot/languages/python$ make fulltest
cd ../.. ; perl -Ilib t/harness t/dynclass/py*.t
t/dynclass/pybuiltin....ok
t/dynclass/pyclass......ok
t/dynclass/pycomplex....ok
t/dynclass/pyfunc.......ok
t/dynclass/pyint........ok
All tests successful.
Files=5, Tests=42, 11 wallclock secs (10.11 cusr +  0.88 csys = 10.99 CPU)
perl t/harness t/basic/*.t
t/basic/01_hello....ok
t/basic/02_expr.....ok
t/basic/03_types....ok
t/basic/func........ok
t/basic/iter........ok
t/basic/oo_attr.....ok
t/basic/oo_class....ok
All tests successful.
Files=7, Tests=110, 45 wallclock secs (12.54 cusr +  2.79 csys = 15.33 CPU)
perl t/harness t/pie/b*.t
t/pie/b1....ok
t/pie/b2....ok
t/pie/b3....ok
t/pie/b5....ok
t/pie/b6....ok
All tests successful.
Files=5, Tests=35, 39 wallclock secs ( 8.27 cusr +  0.88 csys =  9.15 CPU)

What does this mean?  Pretty much only that these particular tests pass, nothing more, nothing less.  These tests focus mostly on breadth (can I iterate over a dictionary?) vs depth (does dictionary have a keys method?)  As there is no current test case which requires dict.keys, this method is not yet coded.  Not that it would be difficult to add, but it won't be added until there are test cases to back it up.

Bigger issues include unbound methods, dictionaries with non-string keys, and multiple inheritance.  In these areas, I have some "scaffolding" code in place until the real code can be put in place.  While some of these may be difficult to design, all the design work is done in Python, what's left is the implementation.

What is does mean is that there is some hope that pie-thon can be revisited at the next PyCon or OSCON.  While I'm optimistic that Parrot will be competitive, I believe that the real win won't be in performance, but in providing Python programmers access to CPAN.

Things I'd love to do... work with the Jython, iron-python, and CPython folks to work out the details of a common Python compatibility test suite.  And work with the PyPy folks to see if the Parrot work I have done could be leveraged there.

If anybody is interested in helping with any of these things, leave a comment here.