i've filled in the missing pieces in compatibility.lisp to
support openmcl.  all tests pass reliably except the test
receive-with-timeout occassionally runs a few milliseconds
too long.

my darcs repo is here:
   http://monday-monkey.com/repos/erlisp/


     ...bryan

I had exactly the same problem the first time I tried to add CMUCL support. The line that helped CMUCL was (mp:process-yield), which made an order-of-magnitude difference in the amount of wasted time in the polling loop (though it would be better to not have a polling loop at all). Does OpenMCL have something similar? It sounds like you are most of the way there. The hard part is making it work at all, and you've done that. Optimizing to boost the speed is comparatively easy.

If you can't find a way to improve the speed, it might be okay to submit your changes as they stand. Add a comment line in the event-wait function indicating that some optimization is needed for the OpenMCL version, make a similar note in the patch description, and submit the 90% solution that might be useful as-is and that we can work on improving later.

Eric