Re: fork in Lisp? was: Maxima servermode: stability of commands....
Subject: Re: fork in Lisp? was: Maxima servermode: stability of commands....
From: Gerd Kortemeyer
Date: Tue, 9 May 2006 22:10:23 -0400
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.