From: Marcin T. <mm...@ze...> - 2004-10-28 13:29:40
|
Is there any documentation for the semantics of Thread constructs, and any at all for mailbox-related constructs? |
From: Peter G. <pe...@ar...> - 2004-10-28 19:35:11
|
On Thu, 28 Oct 2004 at 14:29:35 +0100, Marcin Tustin wrote: > Is there any documentation for the semantics of Thread constructs, > and any at all for mailbox-related constructs? Short answer: no. Your best bet is to examine the source. The thread stuff is very simple. Basically, if you have a function FOO of no arguments, (MAKE-THREAD #'FOO) will launch a new thread running FOO and return the thread object. Andras wrote the mailbox code. I believe it's roughly compatible with the analogous thing in LispWorks, but I could be wrong. Threads and mailboxes are not part of the ANSI standard, and the way they work is still somewhat experimental and subject to change. At some point, if all goes well, we'll document things and try to to stick to the documented interfaces thereafter. -Peter |
From: Marcin T. <mm...@ze...> - 2004-10-28 19:42:35
|
On Thu, Oct 28, 2004 at 12:35:01PM -0700, Peter Graves wrote: > On Thu, 28 Oct 2004 at 14:29:35 +0100, Marcin Tustin wrote: > > Is there any documentation for the semantics of Thread constructs, > > and any at all for mailbox-related constructs? > > Short answer: no. Your best bet is to examine the source. Turns out that the java code was easy to understand. Is there any reason why mailboxes are implemented as java constructs, rather than lisp? |
From: Peter G. <pe...@ar...> - 2004-10-29 18:36:06
|
On Thu, 28 Oct 2004 at 20:42:26 +0100, Marcin Tustin wrote: > Turns out that the java code was easy to understand. Is there any > reason why mailboxes are implemented as java constructs, rather than > lisp? Doing it in Java guarantees that it will be as efficient as possible. It might be possible to do something roughly equivalent in Lisp, but given the current state of ABCL's compiler, the bytecode generated from the Lisp source is unlikely to be as efficient as the bytecode generated from Mailbox.java by javac. -Peter |