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. ;-)
On Tue, 2012-04-17 at 19:08 +0700, Kamil Shakirov wrote:
Hello,
The attached patches do not add or fix anything, just clean up the lispworks implementation a bit. ;-)
- bordeaux-threads-0.8.1+lw6x.patch
Thanks, I merged a slightly different patch
- bordeaux-threads-0.8.1+eos.patch
This patch replaces FiveAM with Eos. Eos has no dependencies and backward compatible with FIveAM API.
Obviously not, because fixtures are missing. I'll see what I can do about it, but I won't merge the patch for the moment
On Tuesday, April 17, 2012, Stelian Ionescu wrote:
On Tue, 2012-04-17 at 19:08 +0700, Kamil Shakirov wrote:
Hello,
- bordeaux-threads-0.8.1+eos.patch
This patch replaces FiveAM with Eos. Eos has no dependencies and backward compatible with FIveAM API.
Obviously not, because fixtures are missing. I'll see what I can do about it, but I won't merge the patch for the moment
thanks :) Eos had had fixtures before but they were since removed
according to the change logs.
-- Stelian Ionescu a.k.a. fe[nl]ix Quidquid latine dictum sit, altum videtur. http://common-lisp.net/project/iolib
Hi,
The attached patch removes the def-fixture from the bordeaux-threads test suite, this also makes the code simpler incidentally.
One reason I strongly urge moving from FiveAM to EOS is that FiveAM depends on the Arnesi library, which has a lot of very brittle implementation dependencies.
Vladimir
On Tue, Apr 17, 2012 at 10:10 AM, Stelian Ionescu sionescu@cddr.org wrote:
On Tue, 2012-04-17 at 19:08 +0700, Kamil Shakirov wrote:
Hello,
The attached patches do not add or fix anything, just clean up the lispworks implementation a bit. ;-)
- bordeaux-threads-0.8.1+lw6x.patch
Thanks, I merged a slightly different patch
- bordeaux-threads-0.8.1+eos.patch
This patch replaces FiveAM with Eos. Eos has no dependencies and backward compatible with FIveAM API.
Obviously not, because fixtures are missing. I'll see what I can do about it, but I won't merge the patch for the moment
-- Stelian Ionescu a.k.a. fe[nl]ix Quidquid latine dictum sit, altum videtur. http://common-lisp.net/project/iolib
Bordeaux-threads-devel mailing list Bordeaux-threads-devel@common-lisp.net http://lists.common-lisp.net/cgi-bin/mailman/listinfo/bordeaux-threads-devel
On Tue, 2012-04-17 at 11:54 -0400, Vladimir Sedach wrote:
Hi,
The attached patch removes the def-fixture from the bordeaux-threads test suite, this also makes the code simpler incidentally.
One reason I strongly urge moving from FiveAM to EOS is that FiveAM depends on the Arnesi library, which has a lot of very brittle implementation dependencies.
I now maintain FiveAM(http://fenlix.dreamwidth.org/2255.html) and I removed the dependency on Arnesi, so you can expect to see it in the next release of Quicklisp.
bordeaux-threads-devel@common-lisp.net