Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/uasi/concurrent-revisions

An implementation of Concurrent Revisions written in Perl
https://github.com/uasi/concurrent-revisions

Last synced: 17 days ago
JSON representation

An implementation of Concurrent Revisions written in Perl

Awesome Lists containing this project

README

        

NAME
ConcurrentRev - an implementation of Concurrent Revisions

INSTALLATION
To install this module, run the following commands:

perl Makefile.PL
make
make test
make install

SYNOPSIS
use ConcurrentRev;

my $var = ConcurrentRev::Versioned->new;
$var->value('main');

# Here $var->value eq 'main'

my $fork = rfork {
$var->value('fork');
};

# Still $var->value eq 'main'

rjoin $fork;

# Now $var->value eq 'fork'

or

use ConcurrentRev qw(rfork rjoin versioned);

versioned my $var;
$var = 'main';

my $fork = rfork {
$var = 'fork';
};

rjoin $fork;

say $var;

`Coro::*' functions such as `Coro::cede' can be used in the `rfork'
block.

DESCRIPTION
FUNCTIONS
rfork
rjoin
versioned
AUTHOR
Tomoki Aonuma

LICENSE
This library is free software; you can redistribute it and/or modify it
under the same terms as Perl itself.

SEE ALSO
Revisions - A programming model for parallelizing conflicting tasks,
http://research.microsoft.com/en-us/projects/revisions/