chicken-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Chicken-users] bb.egg problem


From: Mario Domenech Goulart
Subject: Re: [Chicken-users] bb.egg problem
Date: 28 Feb 2007 11:53:18 -0300
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.4

Hi Nico,

On Wed, 28 Feb 2007 14:57:41 +0100 Nico Amtsberg <address@hidden> wrote:

> I figured out a problem using the bb.egg. The code given below fails under
> the following circumstances:
> holding the space key to toggle the first button continously gives the
> following error after an amount of time (about 100 to 300 calls of the
> callback)
> 
> Error: (for-each) argument is not a proper list: error in error
> 
> ...more...
> <eval>
> <eval>
> <eval>
> <eval>
> ...
> 
> What I think I have figured out so far: 
> without having set the key handler, program seems to run 
> with key handler and explicit garbage collector in loop, program seems to run
> 
> Theese observations might lead to the wrong direction, maybe the garbage
> collector just defers the problem. But Im clueless where and how to continue
> debugging.

I've tried your code here and noticed the following behavior:

## With chicken 2.5

1. when count is bound to (iota 100), the program starts ok, but when
   I click the "toggle" button or press the space bar, it makes the
   CPU go 100% and I couldn't do it do anything else;

2. after trying some lower values to iota, I've found out that 58 is
   the limit.  Larger values make the program hog the CPU.  The
   program behaves as expected if I continuously keep the space bar
   pressed (observed until ~800 callbacks, but I guess it could go
   further).

3. with count bound to (iota 58), the program behaves as expected if I
   just start it and click "toggle" or press the space bar.  However,
   if before that I click one of the text entries and after click
   "toogle" or press the space bar, I get the behavior you describe
   ((for-each) argument is not a ...) at more or less the same number
   of callbacks.

## With chicken 2.6rc1

4. the program starts ok with count bound to (iota 100).  After
   pressing the space bar continuously, the program presents the same
   behavior as in 1, but only after processing the callback for 10-20
   times.

5. binding count to (iota 58) doesn't help.  Pressing the space bar
   continuously activates the callback for 5 times, then the CPU hog
   behavior.


Well, just some more observation.  Unfortunately, nothing that may
concretely help you...

Best wishes,
Mario





reply via email to

[Prev in Thread] Current Thread [Next in Thread]