chexum has quit [Ping timeout: 268 seconds]
chexum has joined #picolisp
chexum has quit [Ping timeout: 268 seconds]
chexum has joined #picolisp
<
tankf33der>
Crashes now, debugging.
<
Regenaxer>
Coroutines are really nasty
<
Regenaxer>
The original implementation was not right anyway
<
Regenaxer>
Crashed if a coroutine was called from another coroutine than where it was started from
<
Regenaxer>
e.g. (task ... (co ...
<
Regenaxer>
then (vi 'xxx)
<
Regenaxer>
when the task fires in Vip (which runs in its own coroutine), it crashed
<
Regenaxer>
This is fixed now, coroutines now correctly track their originator
<
tankf33der>
crashes
<
Regenaxer>
Thanks! I check
<
tankf33der>
Send me (task … (co … )) exa
<
tankf33der>
example code i will add to tests.
<
Regenaxer>
I did this:
<
Regenaxer>
: (task -6000 0 (co 'ok (loop (yield (msg 'OK)))))
<
Regenaxer>
: (vi 'anything)
<
Regenaxer>
If "OK" is printen
*in* Vip, I quit it
<
tankf33der>
I need non interactive code
<
Regenaxer>
then start Vip again
*before* "Ok" is printed again
<
tankf33der>
is it possible here?
<
Regenaxer>
Then Vip crashes
<
Regenaxer>
Hard to put into a script
<
tankf33der>
ok, as is.
<
Regenaxer>
This works now
<
Regenaxer>
I use it all the time, cause my PilBox app has such a task
<
tankf33der>
Ok then.
<
Regenaxer>
I think I found it
<
Regenaxer>
Testing
<
Regenaxer>
Seems OK. Was a stupid mistake
<
Regenaxer>
Released it. Can you test when you have time?
<
tankf33der>
All passed, co’s issue closed.
<
Regenaxer>
Wow, cool!
<
Regenaxer>
Thanks for finding!
<
Regenaxer>
So now only my Matrix-Synapse problem remains
<
Regenaxer>
I hope the Debian maintainers fix the package soon
chexum has quit [Ping timeout: 268 seconds]
chexum has joined #picolisp