I have found a solution to my problem by re-writing my code to use the bigloo 
fthread library instead of using continuations. As long as multiple runs of the 
same program produce the same results, this works fine for me.

I have been unable to create a stand-alone example to demonstrate the symptoms 
with call/cc and plan to abandon this approach. I still think there is an issue 
with bigloo's continuations, but I don't know how to identify or demonstrate it.

Thanks,
Todd D.

________________________________
From: [email protected] [[email protected]] on behalf of Dukes, Todd
Sent: Tuesday, August 05, 2014 6:59 PM
To: [email protected]
Subject: [bigloo] update 1: RE: Failing example: RE: problem with continuations 
and corrupted data

Using call/cc instead of call-cc causes this example to pass. Unfortunately for 
me, it does not cause my real program to pass.

Todd D.


________________________________
From: [email protected] [[email protected]] on behalf of Dukes, Todd
Sent: Monday, August 04, 2014 7:37 PM
To: [email protected]
Subject: [bigloo] Failing example: RE: problem with continuations and corrupted 
data


Compile with command line at top of  corrupted-let-problem-example.scm
Run with no arguments. My output looks like this:

bash-4.2$ ./corrupted-let-problem-example
(user-main 1)
p0 5
(p0:(s-ADD ((addr-mode disp) (dst (reg AL)) (src (disp 8192)))))
p1  3.(ebx ((23 34)))
(p1:(s-ADD ((addr-mode disp) (dst (reg AL)) (src (disp 13568)))))
(s-go (thread-exit-length 2))
p0 7
p0 8
(p0:(s-ADD ((addr-mode reg-imm) (dst (reg BX)) (src (imm 0)))))
p1  4.(ebx 165)
(s-go (thread-exit-length 1))
p0 9
(s-go (thread-exit-length 0))
bash-4.2$

The line 'p1 4.(ebx 165)' is incorrect. The value of ebx has taken on the value 
passed to the check-mem function on line 20 of correupted-let-interpreted.scm

This can be verified by changing the value and running again. When I did this, 
I saw the output change to match.

Let me know if you cannot reproduce or if I am misunderstanding how 
continuations should work.

Thanks,
Todd D.



________________________________


Reply via email to