Hello,
The attached patches do not add or fix anything, just clean up the
lispworks implementation a bit. ;-)
1) bordeaux-threads-0.8.1+lw6x.patch
This patch updates lispworks implementation reflecting all recent
changes in LispWorks 6.x MP API.
Some MP calls are still available in 6.x but considered deprecated and
removed from documentation.
1.1) current-thread() changes
It is better to use mp:get-current-process() that was introduced in
LispWorks 5.1 instead of mp:*current-process* that can be bound to
another process.
1.2) threadp() changes
MP provides its own predicates for processes.
1.3) acquire-recursive-lock() and release-recursive-lock() changes
I am getting warnings when compiling bordeaux-threads, so why not
'declaim' these calls 'inline' instead (fixed in the patch)
;;;*** Warning in BORDEAUX-THREADS:ACQUIRE-RECURSIVE-LOCK: Inline
expansion for BORDEAUX-THREADS:ACQUIRE-LOCK not found
;;;*** Warning in BORDEAUX-THREADS:ACQUIRE-RECURSIVE-LOCK: Inline
expansion for BORDEAUX-THREADS:ACQUIRE-LOCK not found
; BORDEAUX-THREADS:ACQUIRE-RECURSIVE-LOCK
;;;*** Warning in BORDEAUX-THREADS:RELEASE-RECURSIVE-LOCK: Inline
expansion for BORDEAUX-THREADS:RELEASE-LOCK not found
;;;*** Warning in BORDEAUX-THREADS:RELEASE-RECURSIVE-LOCK: Inline
expansion for BORDEAUX-THREADS:RELEASE-LOCK not found
1.4) join-thread() changes
LispWorks 6.0 introduces its own mp:process-join() function.
2) bordeaux-threads-0.8.1+eos.patch
This patch replaces FiveAM with Eos. Eos has no dependencies and
backward compatible with FIveAM API.
I couldn't manage to load FiveAM in LW because of arnesi loading
errors. All tests work fine with Eos (tested with recent Clozure CL,
SBCL and LW 6.1).
Thank you for your time. ;-)
--
--ska