[cl-stm-devel] Example code

Hoan Ton-That hoan at ton-that.org
Wed Jun 14 13:16:53 UTC 2006


Faré,

> (1) Doesn't having to acquire a global lock defeat the purpose of
> so-called lightweight transaction commits and just open the system to
> live-locks? (Certainly locks can be detected by a monitor, but the
> locking needed to properly update dependency meta-information in
> presence of the monitor only shuffles around the complexity of
> dependency information maintenance.)

Locks are used for mutual exclusion purposes.  They are allocated
per-slot, per-instance--there is no one global lock.  I could be
misunderstanding you here...

> (2) A minor non-urgent style issue: wouldn't it be nice to use a
> regular MOP-enabled defclass with a proper metaclass (or metaclass
> mixin) rather than use a special purpose deftransactional-class? Are
> other people on this list familiar with the MOP, and what do they
> think of it?

The `deftransactional-class' is just a wrapper macro for `defclass'
adding the metaclass option.  Admittedly, its a bad name--if anyone
could come up with a better one, I'd be glad to use it.

I'll sleep on it.  Zzz...

Hoan



More information about the Cl-stm-devel mailing list