problem: large (~2000 row) CALS table processing fails with norman walsh's table.xsl
solution: tail-recursive xslt2 stylesheet (requires Saxon)

input problem xml (1.1MB) (gzip:32kB)
cals_to_html XSLT stylesheet solution (17kB) (gzip:4kB)
output html (377kB) (gzip:24kB)

(all files zipped : 61kB)

Processing took 10 minutes on a 1.8GHz Pentium 4
memory usage : Stack: < 48MB ; heap: ~ 64MB