Committed to Code

Revactor implements the Actor model using Ruby 1.9's Fibers for concurrency and Rev for event monitoring. Revactor also provides tools for building Erlang-like services on top of Actors, including networking, transactional servers, and finite state machines.

No managers have claimed this project yet. Claim this position

Project Tags Tagged as actor ruby concurrency rubygem distributed library message_passing

Code Analysis


News

Revactor 0.1.2 released

Following official DHH release guidelines, Revactor 0.1.1 saw a stealth release followed by an official 0.1.2 the next day. Never mind grabbing 0.1.1, you can head straight for 0.1.2.

So what’s new? Well, now wherever you are inside your ... [More] program, you’re in the scope of an Actor. This release brings with it both thread-specific schedulers and ones that work from toplevel scope. There’s no longer an “Actor world” in your Ruby programs, and instead you can use Actors anywhere.

This release also brings with it Erlangy exception handling using a technique called linking. Now you can group interdependent Actors together and easily implement supervision trees to restart the whole group in the event of an uncaught exception. For more information, see the Handling Exceptions section of the Revactor README: http://doc.revactor.org/files/README.html

Revactor is available as a gem (Ruby 1.9 only):

gem install revactor [Less]


Revactor blog buzz

I’m glad to see Revactor’s starting to make a splash in the Ruby blogging community. Here are a few mentions of it:

RubyZone: Interview With Revactor Developer Tony Arcieri

An interview with yours truly about Revactor ... [More] , its goals, and concurrent programming in general.

On Ruby: Ruby Concurrency with Actors

Another article by the same author, provides a more broadened perspective on the concurrency landscape in Ruby, including Erlang creator Joe Armstrong’s take on libraries like Revactor which try to add Erlangy features to what’s in the end an imperative language with mutable state.

Startrader’s Weblog: Revactor: Poor Name, Great Idea

Well, can’t blame you on the name, it’s one of those ones I picked somewhat capriciously that stuck in my head to the point that I couldn’t shake it. But if _why can call his tag soup library Hpricot, then I can call my Actor library Revactor, damn it! Kidding, of course…

That said, one of the main criticisms of Revactor in the article (beyond the name) was the lack of support for linking, which was addressed as of an hour ago. Dig in! [Less]


Revactor blog buzz

I’m glad to see Revactor’s starting to make a splash in the Ruby blogging community. Here are a few mentions of it:

RubyZone: Interview With Revactor Developer Tony Arcieri

An interview with yours truly about Revactor ... [More] , its goals, and concurrent programming in general.

On Ruby: Ruby Concurrency with Actors

Another article by the same author, provides a more broadened perspective on the concurrency landscape in Ruby, including Erlang creator Joe Armstrong’s take on libraries like Revactor which try to add Erlangy features to what’s in the end an imperative language with mutable state.

Startrader’s Weblog: Revactor: Poor Name, Great Idea

Well, can’t blame you on the name, it’s one of those ones I picked somewhat capriciously that stuck in my head to the point that I couldn’t shake it. But if _why can call his tag soup library Hpricot, then I can call my Actor library Revactor, damn it! Kidding, of course…

That said, one of the main criticisms of Revactor in the article (beyond the name) was the lack of support for linking, which was addressed as of an hour ago. Dig in! [Less]


Revactor 0.1.2 released

Following official DHH release guidelines, Revactor 0.1.1 saw a stealth release followed by an official 0.1.2 the next day. Never mind grabbing 0.1.1, you can head straight for 0.1.2.

So what’s new? Well, now wherever you are inside ... [More] your program, you’re in the scope of an Actor. This release brings with it both thread-specific schedulers and ones that work from toplevel scope. There’s no longer an “Actor world” in your Ruby programs, and instead you can use Actors anywhere.

This release also brings with it Erlangy exception handling using a technique called linking. Now you can group interdependent Actors together and easily implement supervision trees to restart the whole group in the event of an uncaught exception. For more information, see the Handling Exceptions section of the Revactor README.

Revactor is available as a gem (Ruby 1.9 only):

gem install revactor [Less]


Revactor 0.1.2 released

Following official DHH release guidelines, Revactor 0.1.1 saw a stealth release followed by an official 0.1.2 the next day. Never mind grabbing 0.1.1, you can head straight for 0.1.2.

So what’s new? Well, now wherever you are inside ... [More] your program, you’re in the scope of an Actor. This release brings with it both thread-specific schedulers and ones that work from toplevel scope. There’s no longer an “Actor world” in your Ruby programs, and instead you can use Actors anywhere.

This release also brings with it Erlangy exception handling using a technique called linking. Now you can group interdependent Actors together and easily implement supervision trees to restart the whole group in the event of an uncaught exception. For more information, see the Handling Exceptions section of the Revactor README.

Revactor is available as a gem (Ruby 1.9 only):

gem install revactor [Less]


Read all Revactor articles…

Edit RSS feeds.