During the 6.0 bug scrub / planning session there was a lot of discussion of 
Concurrency Kit (libck). The fundamental issue is that CK does not compile in a 
C++ environment and cannot be made to do so without significant and 
incompatible API changes. This is also true for the header files which means no 
C++ code can use CK. This is a bit of problem for using CK in ATS, something we 
did not anticipate when we originally tried to use CK. For this reason we have 
repeatedly put off building CK in the official releases but now that it is 
clear we will never be able to use CK as it is we have removed it entirely.

Phil Sorber has discussed this extensively with Samy Al Bahra, the author of 
Concurrency Kit and with the CK community. The best option at this point is to 
create a new project, CK++, which will be a C++ version of CK. It would start 
with a forked version of CK which would then be modified to build and run in a 
C++ environment. The CK community and Samy are all positive about this - we are 
not the only ones who have wanted CK in C++. The changes would be essentially 
wrapper changes and additional template / typing support, we would use the same 
underlying implementation. We could then integrate the CK++ into ATS and start 
using modern synchronization mechanisms.
  

Reply via email to