Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > Ruby > Announcing Revactor: an Actor model implementation for Ruby 1.9

Reply
Thread Tools

Announcing Revactor: an Actor model implementation for Ruby 1.9

 
 
Tony Arcieri
Guest
Posts: n/a
 
      01-21-2008
[Note: parts of this message were removed to make it a legal post.]

I'm pleased to announce the initial public availability of Revactor, an
Actor framework for Ruby 1.9. The Actor model has seen increasing popularity
in languages like Erlang and Scala. Revactor adds asynchronous message
passing to the Fibers mechanism, easing the development of concurrent
programs using them. You can read more about the Actor model here:

http://revactor.org/philosophy/

Revactor also includes a high performance sockets API, largely compatible
with Ruby's own, but which also seamlessly interoperate with the Actor API.
Using this approach means you can simultaneously process messages from both
sockets and other Actors. Furthermore, with a small amount of monkeypatching
it's able to run Mongrel, using Actors instead of threads as the underlying
concurrency mechanism. Initial tests of the performance of Mongrel on top of
Revactor surpass the threaded version.

Revactor is available as a gem and can be installed with:

*gem install revactor*

For additional information please see the web site:

http://revactor.org
--
Tony Arcieri
ClickCaster, Inc.
http://www.velocityreviews.com/forums/(E-Mail Removed)

 
Reply With Quote
 
 
 
 
Chauk-Mean P.
Guest
Posts: n/a
 
      01-21-2008
Hi,

Tony Arcieri wrote:
> I'm pleased to announce the initial public availability of Revactor, an
> Actor framework for Ruby 1.9. The Actor model has seen increasing
> popularity
> in languages like Erlang and Scala. Revactor adds asynchronous message
> passing to the Fibers mechanism, easing the development of concurrent
> programs using them. You can read more about the Actor model here:
>
> http://revactor.org/philosophy/
>


It sounds very interesting. I will take a look at it.

Chauk-Mean.
--
Posted via http://www.ruby-forum.com/.

 
Reply With Quote
 
 
 
 
Chauk-Mean P.
Guest
Posts: n/a
 
      01-21-2008

> Tony Arcieri wrote:
>> I'm pleased to announce the initial public availability of Revactor, an
>> Actor framework for Ruby 1.9. The Actor model has seen increasing
>> popularity
>> in languages like Erlang and Scala. Revactor adds asynchronous message
>> passing to the Fibers mechanism, easing the development of concurrent
>> programs using them. You can read more about the Actor model here:
>>
>> http://revactor.org/philosophy/
>>

>
> It sounds very interesting. I will take a look at it.
>
> Chauk-Mean.


Oops. Revactor requires Rev which requires libev.
I'm on Windows and compiling Rev and libev is not an obvious/easy task.
I will try to have a look on a Linux machine.

Chauk-Mean.
--
Posted via http://www.ruby-forum.com/.

 
Reply With Quote
 
Eivind Eklund
Guest
Posts: n/a
 
      01-21-2008
On Jan 21, 2008 8:13 AM, Tony Arcieri <(E-Mail Removed)> wrote:
> I'm pleased to announce the initial public availability of Revactor, an
> Actor framework for Ruby 1.9. The Actor model has seen increasing popularity
> in languages like Erlang and Scala. Revactor adds asynchronous message
> passing to the Fibers mechanism, easing the development of concurrent
> programs using them. You can read more about the Actor model here:
>
> http://revactor.org/philosophy/


I noticed this use the Case gem to match patterns. Compared to what
you detail, you should be able to get even more flexibility for at
least some cases by using the matching framework that's in types.rb -
http://people.freebsd.org/~eivind/ruby/types/

Eivind.

 
Reply With Quote
 
NewtonApple
Guest
Posts: n/a
 
      01-21-2008
This is very nice. Given Ruby's flexibility, I know sooner or later
there's bound to be a ruby implementation of Erlang's message passing
system (more elegant and pragmatic, hopefully). Hell, even Matz wants
one. May I suggest a few more examples in the RDoc to highlight the
cooperations of actors? They would probably help deepen imaginations
for a beginner like me. Meanwhile I'll keep poking at it until I find
my ha-ha moment (hopefully soon). Thanks for your contribution. Keep
up the good work!

p.s. I know Ruby1.9 is fast, but I didn't think it'd catch on this
fast!

David

 
Reply With Quote
 
Joel VanderWerf
Guest
Posts: n/a
 
      01-21-2008
Tony Arcieri wrote:
> I'm pleased to announce the initial public availability of Revactor


Any plan to support UDP sockets? (A quick scan of the source seems to
indicate that it doesn't yet.)

--
vjoel : Joel VanderWerf : path berkeley edu : 510 665 3407

 
Reply With Quote
 
Tony Arcieri
Guest
Posts: n/a
 
      01-21-2008
[Note: parts of this message were removed to make it a legal post.]

On Jan 21, 2008 5:57 AM, Eivind Eklund <(E-Mail Removed)> wrote:

> I noticed this use the Case gem to match patterns. Compared to what
> you detail, you should be able to get even more flexibility for at
> least some cases by using the matching framework that's in types.rb -
> http://people.freebsd.org/~eivind/ruby/types/<http://people.freebsd.org/%7Eeivind/ruby/types/>
>


Interesting. Any plans on releasing this as a gem?

--
Tony Arcieri
ClickCaster, Inc.
(E-Mail Removed)

 
Reply With Quote
 
Tony Arcieri
Guest
Posts: n/a
 
      01-21-2008
[Note: parts of this message were removed to make it a legal post.]

On Jan 21, 2008 12:28 PM, Joel VanderWerf <(E-Mail Removed)> wrote:

> Any plan to support UDP sockets? (A quick scan of the source seems to
> indicate that it doesn't yet.)
>


Yes, there will eventually be a Revactor::UDP module as a counterpart to the
TCP one. This isn't a particularly high priority at the present time,
though.

--
Tony Arcieri
ClickCaster, Inc.
(E-Mail Removed)

 
Reply With Quote
 
Eivind Eklund
Guest
Posts: n/a
 
      01-22-2008
On Jan 21, 2008 8:58 PM, Tony Arcieri <(E-Mail Removed)> wrote:
> On Jan 21, 2008 5:57 AM, Eivind Eklund <(E-Mail Removed)> wrote:
>
> > I noticed this use the Case gem to match patterns. Compared to what
> > you detail, you should be able to get even more flexibility for at
> > least some cases by using the matching framework that's in types.rb -
> > http://people.freebsd.org/~eivind/ruby/types/<http://people.freebsd.org/%7Eeivind/ruby/types/>
> >

>
> Interesting. Any plans on releasing this as a gem?


I can do a gem release if you're interested in using it.

Eivind.

 
Reply With Quote
 
Tony Arcieri
Guest
Posts: n/a
 
      01-22-2008
[Note: parts of this message were removed to make it a legal post.]

On Jan 21, 2008 11:45 PM, Eivind Eklund <(E-Mail Removed)> wrote:

> I can do a gem release if you're interested in using it.
>


I think it might be overkill for the purposes of inter-Actor messaging. For
the most part all that's needed for matching expected messages are the
expected tokens and wildcards.

I'm trying to port some more complex applications to Revactor and will
hopefully discover shortly if there's pattern matching corner cases the Case
gem can't provide.

--
Tony Arcieri
ClickCaster, Inc.
(E-Mail Removed)

 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
state of actor model? Diego Virasoro Ruby 2 10-08-2009 04:07 PM
NEW DVD "Embedded": Actor enters stage left and takes aim at the lying politicians and their lapdog media JAS DVD Video 8 07-29-2005 02:27 AM
Anyone know anything named DX? (was Re: Announcing PyCs) (was:Announcing PyCs, a new Python-like language on .Net) Mark Hahn Python 22 09-09-2004 12:14 PM
boost::spirit::actor doesn't accept a std::vector<int> Ingo Nolden C++ 1 07-14-2004 02:22 PM
Another stupid list: Which Actor appears most in your DVD collection? Bexley DVD Video 17 06-03-2004 11:28 AM



Advertisments