Re: fork in Lisp? was: Maxima servermode: stability of commands....



Hi,

On May 2, 2006, at 7:19 PM, Robert Dodier wrote:
>
>> Unfortunately, just like Michele reports, this stopped working with
>> the most recent update of Maxima I installed. It's Finals Week here
>> at MSU, so I did not have the time yet to find out why ... and now
>> back to writing exams :-(
>
> Well, I'm sorry to hear that. When you have the time to investigate
> please post a report to the mailing list and we'll try to figure out
> what is the problem.


I never figured out what the root of my problem was: my old proxy  
worked fine on a workstation with Maxima 5.9.2.99rc1 and SBCL, but it  
did not work on a laptop with Maxima 5.9.3 and CLISP - just too many  
variables for a "controlled experiment." It probably wasn't just the  
Maxima version.

The symptoms were the following: on the laptop, I got my initial  
input echoed back to me, and from then on, the command/reply sequence  
was out of sync: for each command, I got the reply from the previous  
one. Also, I got different results in both environments when there  
was a syntax error in an expression.

In any case, I "solved" this by making sure that I flush all leftover  
output before processing a new command, which I should have done in  
the first place. It appears to work fine in both environments; and it  
appears to be pretty fast, *much* faster than starting a new process  
every time, so I'm happy.

The code is posted at http://www.lon-capa.org/cas.html

Michele, did you get your proxy to work again? I played a lot with  
the "-s" option initially, and could get some results, but in the  
end, doing "screen harvesting" with EXPECT turned out to be a lot  
more stable. Since "-s" is actually a client, I needed to start the  
proxy, then the proxy started Maxima and had to wait for Maxima to  
call back ... just a bit too cumbersome.

- Gerd.