[m-dev.] Generalizing STM

Chris King colanderman at gmail.com
Fri Nov 4 00:54:18 AEDT 2011


On Thu, Nov 3, 2011 at 2:53 AM, Peter Wang <novalazy at gmail.com> wrote:
> Do you mean you would treat
>
>    atomic [outer(...), inner(...)] (
>        GOAL    % semidet
>    )
>
> as
>
>    atomic [outer(...), inner(...)] (
>        ( GOAL ->
>            true
>        ;
>            retry(...)
>        )
>    )

Precisely.  Attached is a proof-of-concept implementation.  Compile
with "mmc -O6 --parallel --make new_stm_queue".
-------------- next part --------------
A non-text attachment was scrubbed...
Name: stm.m
Type: application/octet-stream
Size: 8847 bytes
Desc: not available
URL: <http://lists.mercurylang.org/archives/developers/attachments/20111103/b4118b54/attachment.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: new_stm_queue.m
Type: application/octet-stream
Size: 2624 bytes
Desc: not available
URL: <http://lists.mercurylang.org/archives/developers/attachments/20111103/b4118b54/attachment-0001.obj>


More information about the developers mailing list