tcl update

coke on 2006-08-07T06:19:03

Recent tcl on parrot work:

1) update [expr] to use the parrot compiler tools, PGE, TGE - this allows us to write the expr grammar using perl6 rules instead of handrolled PIR.

2) create a test::more like set of procedures which allow us to run the tcl tests with only very minor modifications. This lets us drop the huge (and incomplete) test conversions to a perl based suite. partcl tests are mostly converted to using this like test::more - we provide a 'test' sub that is implemented in terms of the test::more subs - this lets us generate the normal (to us) TAP output, even on the tclsh tests.

The conversion means we're running larger tcl files (in the form of tests) than we have to date. This is exposing issues in both partcl and parrot that are spurring development on both fronts.

Because the tests are now being written in tcl, we can easily run them with the latest tclsh to verify we're testing for the right things: this helped find a bug in tcl8.5a4.

Here's the result of all the tcl tests we can currently parse ``natively'' (in quotes because we're still not using tcltest.tcl):

Failed 34/38 test scripts, 10.53% okay. 568/937 subtests failed, 39.38% okay.

So, passing 369 tests using the current method. We'd be shown passing more, but some test files die because of their size (chokes the compiler), or for other reasons after some passes. Any test that dies prematurely isn't counted in this list.