Hi Konrad and Henrik,

> Is the best way to simply review the Twisted source and
> reimplementing in Pico, keeping the OODB in mind all the time maybe?

reading from http://en.wikipedia.org/wiki/Twisted_(software)

   Twisted supports an abstraction over raw threads=E2=80=94using a thread =
   a deferred source.

How threads fit in the Twisted framework?  I thought that Konrad's
idea was not to use threads or processes at all?

In case of forking, it is as efficient to use processes as using
threads, at least on Linux, as Rand already mentioned.  The advantage
of picoLisp is that the processes are small, say 3MB so you can have
many sessions and fork many times before you run out of memory.  This
is very hard to achieve with Common Lisp implementations (or Java) for
example, so people there "need" threads with their monster process.

I do not think Konrad could achieve single process/thread http server
without a bit of coding in C.  PicoLisp I/O operations block I think
and that is not good for this problem.  It would be at least hard to
make sure no operation blocks the process.

Maybe the best or most pragmatic way is splitting your web app into a
static files part that can be served by a specialized web server,
e.g. thttpd or nginx and a dynamic part served by picolisp.

It would be nice to see Konrad's aim come true though;-)



Reply via email to