Hi
since you guys are looking at threading issues, I would suggest that you dig up some of the old EcoLISP threading things by Giuseppe Attardi. I do not know how much of it survives in ECL, but it is worth looking up. If memory does not fail me it had a very much continuation-style concurrency model.
Cheers
Marco
On Nov 3, 2004, at 8:17 AM, Hoehle, Joerg-Cyril wrote:
Dirk wrote:
Is it just because threads with shared memory and locking are the best we can do for parallelism, and because socket and RPC libraries are totally adequate for distributed programming? I think the answer is no.
So do I. Therefore I was disappointed by your roadmap which talks a lot about OS threads and special (thread-local) variables. Recently I came again across Lightweight Languages Workshop 2002 http://ll2.ai.mit.edu/ You'll notice that Joe Armstrong's web server starts where Apache has already broken down due to too many concurrent users. I you go with OS threads, you'll never get there.
I reread part's of Graham's On Lisp yesterday. There's one section where he mentions that a completely unperformant but working thing is still valuable to start with because it allows experimentation (similar topic idea in the article about the failure of the NIL machine/project).
The reason why I want to depart from OS threads is because I expect different ways of computing arise when "threads" are extremely light weight (as in Erlang or Oz, not in UNIX), like different ways of computing arose when stack space became cheap or when memory became cheap. I.e. these days, many GNU programs allocate a few MB on the stack without shame, and programs long do in memory only what once were expensive disk-bound operations. This allows different algorithms to be used to address problems.
OTOH maybe one can wait until a typical Linux can fork a 300000 threads on a 256MB machine (I haven't checked how far StateThreads and the other approaches can go). That's ~1KB per thread! Cf. http://c2.com/cgi/wiki?MessagingAsAlternativeToMultiThreading
Regards, Jörg Höhle. PS: I didn't see a comp.lang.lisp thread, nor a wiki/message forum on your site and I still think eurolisp is not the right forum for this.
eurolisp site list eurolisp@common-lisp.net http://common-lisp.net/mailman/listinfo/eurolisp
-- Marco Antoniotti http://bioinformatics.nyu.edu NYU Courant Bioinformatics Group tel. +1 - 212 - 998 3488 715 Broadway 10th FL fax. +1 - 212 - 998 3484 New York, NY, 10003, U.S.A.