You know cj - I think there is more going on here than meets the eye ! Either kix is really bad at file i/o or at alloc/dealloc'n string variables - or vbs is somehow "optimizing" your $sTemp into the bit bucket.

But the notion of an optimizing script interpreter is a bit far fetched ! But those numbers are unbelievably dramatic (too say the least!)...

Given the evidence - and since we used the OLE version of the kix script (which does everything the vbs script does) - I would say it has more to do with the way kix allocates and deallocates string vars ?

Here's that kix ole script we tried... it opens up some interesting possiblities for marrying the richness of vbs with kix...

code:

break on


$filename = "test.dat"
$filTest = val("&"+olecallfunc(olecreateobject("Scripting.FileSystemObject"), "opentextfile", "s", "$filename"))


?"@time"
$iTemp = 0
do
$sTemp = olecallfunc($filTest,"readline")
$iTemp = $iTemp + 1
until olegetproperty($filTest,"atendofstream") = "-1"
?"@time"
?"$iTemp lines"
$= olecallfunc($filTest,"close")

exit


Shawn.