Don Cohen wrote:
[…]
>
> BTW, I think defpackage is not working right either, since I found
> that I got different results reloading the code below (which does
> defpackage) than exiting and restarting abcl.
DEFPACKAGE currently doesn't "redefine" packages, meaning that ABCL will
ignore any subsequent DEFPACKAGE form for an already defined package.
Interestingly this behavior is allowed by ANSI, but no other CL
implementation has this behavior. Could this explain the behavior you see?
> While I'm at it, is multiprocessing (multithreading) supported in
> abcl? If so, what interfaces are supported?
Insofar that Java is inherently multithreaded and you can create
arbitrary object ABCL supports threading, but I don't think much
"thought" has been given to what sort of effects multiple threads of
dispatch would have.
There are some primitives (MAKE-THREAD, MAPCAR-THREADS, …) that show up
in LispThread.java plus a mailbox data structure in Mailbox.java that
sort of handles message synchronization patterns, but I have never
gotten much further than demonstrating that I could fire off separating
different threads of control. If you get any experience, please report
back here.
|