procedure recU64ToBuf; @nodisplay; @noframe;
begin recU64ToBuf;

if
(#{
test( edx, edx );
jnz true;
test( eax, eax );
jz false;
}#) then

DivideBy10();
push( ecx );
recU64ToBuf();
...


do i see recursion? in conversion of 64bit integer to ascii

???
Posted on 2006-09-28 02:41:19 by vid
I don't think the HLA standard library was originally written with speed in mind -  and you'll have to admit that the logic of this implementation is very clear.

However if you look at usenet, you'll see that Randall is currently working on optimization of the routines.
Posted on 2006-09-28 03:10:44 by f0dder
first of all, the syntax of that "if" is not clear to me, so i can't judge further. but isn't it weird to use recursion for thing that requires one straightforward loop?

to me it seems as doing
while (x) {y}
this way
void something()
{ y; if (x) something();}
Posted on 2006-09-28 03:16:26 by vid