
On 7/14/07, John Maddock <john@johnmaddock.co.uk> wrote:
Definite interest I'm sure, my only slight concern is that even your interlocked framework alone looks to be quite ambitious, with a lot of primitives. I guess the crunch will come when you try and port to multiple platforms. Looks to be headed in the right direction, based on a very quick look though.
It shouldn't be much more difficult to port than the proposals. A lot of stuff is automatically generated based off of a single macro definition. Specifying a CAS definition and what size/alignment of types that are useable with CAS on your system automatically generates the entire rest of the library including the integer headers and lock-free ops on types smaller and of a different alignment as well (by taking the encapsulating word and doing CAS on that, as specified in a couple of the proposals). You can go further and provide more direct support for any other operations to override defaults, and you can even take short-cuts such as just specifying the behavior of volatile on your compiler (i.e. if volatile implies acquire loads and release stores, you just specify as such and it will generate the corresponding functions automatically based off of that). I do not yet have support for a lock-based emulated implementation. On 7/14/07, Mathias Gaunard <mathias.gaunard@etu.u-bordeaux1.fr> wrote:
From reading the documentation for a few minutes, I already find it quite better than N2324, personally.
Thanks. I've been putting a lot of time into it. On 7/14/07, Matias Capeletto <matias.capeletto@gmail.com> wrote:
Welcome back :) I was missing you guys!
Ha, thanks. The docs are looking great btw. -- -Matt Calabrese