[gambit-list] JavaScriptScheme: too much recursion
James Long
james.long at coptix.com
Sun Jun 1 22:59:46 EDT 2008
It happens (for me) with any JSS file - the runtime code itself is
generating the error. Even a simple JSS file with the code `(display
"Hello World")' causes the error. That doesn't happen for you? I
tried disabling Firebug or anything else that might be causing the
problem, but it still happens. I looked around for the Javascript
error on the net and I couldn't find any oddities about it. Are you
testing Firefox on OS X? It happens for me on Firefox 2 & 3 on OS X
Leopard.
It works under Safari, and I can't test IE at the moment.
I was indeed able to reproduce the same Javascript error by kicking
the stack depth over 5000.
I'd love to study the compiler at some point - when I do that maybe
I'll try to give a better bug report.
- James
On May 31, 2008, at 9:09 AM, Marc Feeley wrote:
> JSS uses CPS conversion and trampolines, so the call graph is
> (should be?) of a small constant depth. I don't know why you are
> getting a "too much recursion error". The only thing I can think of
> is that the JavaScript code itself is too heavily nested
> (syntactically) and the JavaScript interpreter/compiler overflows
> the compile-time stack while parsing/compiling the code. Does the
> problem occur for large files only? Have you tried JSS on other
> browsers? I'm curious which ones encounter the same problem. Do
> you have a test case I can try?
>
> Marc
>
> On 30-May-08, at 3:51 PM, James Long wrote:
>
>> Hey Marc (or anyone who has used Jss from the Dumping Grounds on the
>> wiki),
>>
>> I grabbed your scheme-to-javascript compiler off the dumping grounds,
>> and it works great in Safari. In Firefox 2 & 3 however, the
>> javascript engine throws the error "too much recursion." I will be
>> looking through the code myself, but do you think there's a fix? If
>> it's a real stack overflow error (not from an infinite loop), you
>> could do some optimizing before spitting out the Javascript. This
>> might get too involved, and the compiler might not have all the
>> information to make guesses at inlining, etc. I haven't studied CPS-
>> transforming compilers enough yet.
>>
>> - James
>> _______________________________________________
>> Gambit-list mailing list
>> Gambit-list at iro.umontreal.ca
>> https://webmail.iro.umontreal.ca/mailman/listinfo/gambit-list
>
More information about the Gambit-list
mailing list