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



Hi Gerd,

> Actually, it does take a long time. I did some experimenting for LON-
> CAPA, also for assessment purposes, and given the workloads we
> regularly deal with, the one-process-per-request method is prohibitive.

Well, I wonder if some/any varieties of Lisp support POSIX fork.
The prototypical scheme is: wait for client connection, get client,
fork current process, let child handle client. If I'm not mistaken
Unix-like systems optimize this process so that very little is
actually copied, so the whole cycle is relatively fast.

Fork may be impossible on Windows, but it is valuable enough
that even if fork is a Unix-only thing, it would be worth it for
Maxima to pursue.

> 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.

Robert Dodier