From leon at tim-online.nl Sat Mar 15 20:11:58 2008 From: leon at tim-online.nl (Leon Bogaert) Date: Sun, 16 Mar 2008 01:11:58 +0100 Subject: [Revactor-talk] Having problems with the chat_server example In-Reply-To: <0A02838AFAB4AA41A421A9D09800FE6651CCC899BB@server-tim.tim-online.nl> References: <0A02838AFAB4AA41A421A9D09800FE6651CCC899BB@server-tim.tim-online.nl> Message-ID: <0A02838AFAB4AA41A421A9D09800FE6651CCC899BC@server-tim.tim-online.nl> I got it. The example was for the latest version. I had the .12 version. What has changed between those versions that the chat_server wouldn't run? I'm very interested. Leon ________________________________________ From: Leon Bogaert Sent: 15 March 2008 23:35 To: revactor-talk at rubyforge.org Subject: Having problems with the chat_server example Hi all, I'm trying to use the chat_server.rb in the examples dir of revactor. But I can't manage to use it :) It asks "Please enter a nickname:", which I do. And then it does nothing anymore. I added a print filter.inspect in the two loops. They print something when you register. But then nothing anymore. Is there someone who could explain what I'm doing wrong? Thanks in advance! Leon From tony at medioh.com Sun Mar 16 16:41:09 2008 From: tony at medioh.com (Tony Arcieri) Date: Sun, 16 Mar 2008 14:41:09 -0600 Subject: [Revactor-talk] Having problems with the chat_server example In-Reply-To: <0A02838AFAB4AA41A421A9D09800FE6651CCC899BC@server-tim.tim-online.nl> References: <0A02838AFAB4AA41A421A9D09800FE6651CCC899BB@server-tim.tim-online.nl> <0A02838AFAB4AA41A421A9D09800FE6651CCC899BC@server-tim.tim-online.nl> Message-ID: On Sat, Mar 15, 2008 at 6:11 PM, Leon Bogaert wrote: > I got it. The example was for the latest version. I had the .12 version. > What has changed between those versions that the chat_server wouldn't run? > I'm very interested. > There's been some changes to the scheduler semantics as well as bugfixes. I'm not particularly happy with the scheduler semantics as they exist now. Among other things if you're trying to send messages from an interactive session, you have to manually suspend the current Actor (by calling Actor.receive or something that wraps it like Actor.sleep or Actor.tick) Anyway, glad to hear it's working for you. I'll be doing another release soon which will help address some of these problems. -- Tony Arcieri medioh.com -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/revactor-talk/attachments/20080316/e244fa9e/attachment.html From leon at tim-online.nl Sun Mar 16 17:19:44 2008 From: leon at tim-online.nl (Leon Bogaert) Date: Sun, 16 Mar 2008 22:19:44 +0100 Subject: [Revactor-talk] Having problems with the chat_server example In-Reply-To: References: <0A02838AFAB4AA41A421A9D09800FE6651CCC899BB@server-tim.tim-online.nl> <0A02838AFAB4AA41A421A9D09800FE6651CCC899BC@server-tim.tim-online.nl>, Message-ID: <0A02838AFAB4AA41A421A9D09800FE6651CCC899BE@server-tim.tim-online.nl> Hi Tony, Thanks for the reply. I've added a private messaging option to your example. Just to get the hang of revactor. Is this the way something should be implemented? Or am I doing something weird now? http://pastie.caboo.se/166473 Also, is it possible for revactor to run on jruby? Looking forward to the new release! Leon ________________________________________ From: bascule at gmail.com [bascule at gmail.com] On Behalf Of Tony Arcieri [tony at medioh.com] Sent: 16 March 2008 21:41 To: Leon Bogaert Cc: revactor-talk at rubyforge.org Subject: Re: [Revactor-talk] Having problems with the chat_server example On Sat, Mar 15, 2008 at 6:11 PM, Leon Bogaert wrote: I got it. The example was for the latest version. I had the .12 version. What has changed between those versions that the chat_server wouldn't run? I'm very interested. There's been some changes to the scheduler semantics as well as bugfixes. I'm not particularly happy with the scheduler semantics as they exist now. Among other things if you're trying to send messages from an interactive session, you have to manually suspend the current Actor (by calling Actor.receive or something that wraps it like Actor.sleep or Actor.tick) Anyway, glad to hear it's working for you. I'll be doing another release soon which will help address some of these problems. -- Tony Arcieri medioh.com From leon at tim-online.nl Sun Mar 16 18:08:54 2008 From: leon at tim-online.nl (Leon Bogaert) Date: Sun, 16 Mar 2008 23:08:54 +0100 Subject: [Revactor-talk] Having problems with the chat_server example In-Reply-To: <0A02838AFAB4AA41A421A9D09800FE6651CCC899BE@server-tim.tim-online.nl> References: <0A02838AFAB4AA41A421A9D09800FE6651CCC899BB@server-tim.tim-online.nl> <0A02838AFAB4AA41A421A9D09800FE6651CCC899BC@server-tim.tim-online.nl>, , <0A02838AFAB4AA41A421A9D09800FE6651CCC899BE@server-tim.tim-online.nl> Message-ID: <0A02838AFAB4AA41A421A9D09800FE6651CCC899BF@server-tim.tim-online.nl> Will the new release for revactor be able to run on ruby 1.8? I'm trying to use ruby-gnome2 AND revactor. But I believe that's a no-go :( Leon ________________________________________ From: revactor-talk-bounces at rubyforge.org [revactor-talk-bounces at rubyforge.org] On Behalf Of Leon Bogaert [leon at tim-online.nl] Sent: 16 March 2008 22:19 To: revactor-talk at rubyforge.org Subject: Re: [Revactor-talk] Having problems with the chat_server example Hi Tony, Thanks for the reply. I've added a private messaging option to your example. Just to get the hang of revactor. Is this the way something should be implemented? Or am I doing something weird now? http://pastie.caboo.se/166473 Also, is it possible for revactor to run on jruby? Looking forward to the new release! Leon ________________________________________ From: bascule at gmail.com [bascule at gmail.com] On Behalf Of Tony Arcieri [tony at medioh.com] Sent: 16 March 2008 21:41 To: Leon Bogaert Cc: revactor-talk at rubyforge.org Subject: Re: [Revactor-talk] Having problems with the chat_server example On Sat, Mar 15, 2008 at 6:11 PM, Leon Bogaert wrote: I got it. The example was for the latest version. I had the .12 version. What has changed between those versions that the chat_server wouldn't run? I'm very interested. There's been some changes to the scheduler semantics as well as bugfixes. I'm not particularly happy with the scheduler semantics as they exist now. Among other things if you're trying to send messages from an interactive session, you have to manually suspend the current Actor (by calling Actor.receive or something that wraps it like Actor.sleep or Actor.tick) Anyway, glad to hear it's working for you. I'll be doing another release soon which will help address some of these problems. -- Tony Arcieri medioh.com _______________________________________________ Revactor-talk mailing list Revactor-talk at rubyforge.org http://rubyforge.org/mailman/listinfo/revactor-talk From tony at medioh.com Sun Mar 16 18:35:30 2008 From: tony at medioh.com (Tony Arcieri) Date: Sun, 16 Mar 2008 16:35:30 -0600 Subject: [Revactor-talk] Having problems with the chat_server example In-Reply-To: <0A02838AFAB4AA41A421A9D09800FE6651CCC899BE@server-tim.tim-online.nl> References: <0A02838AFAB4AA41A421A9D09800FE6651CCC899BB@server-tim.tim-online.nl> <0A02838AFAB4AA41A421A9D09800FE6651CCC899BC@server-tim.tim-online.nl> <0A02838AFAB4AA41A421A9D09800FE6651CCC899BE@server-tim.tim-online.nl> Message-ID: On Sun, Mar 16, 2008 at 3:19 PM, Leon Bogaert wrote: > I've added a private messaging option to your example. Just to get the > hang of revactor. Is this the way something should be implemented? Or am I > doing something weird now? > http://pastie.caboo.se/166473 > Looks to me like I should really factor the whole example into two classes. That'd help with presenting the ideas in the proper order (i.e. here's the bits that actually talk to the network, and here's the brains of the server itself). What you did is fine, but starts to get a bit hard to follow. I'm considering wrapping up some of the Actor boilerplate with metaprogramming, so that you could declare a class, have it "acts_as_actor" (ugh), and it'd metaprogram spawn and spawn_link methods for that class. > Also, is it possible for revactor to run on jruby? I've talked to one of the JRuby guys on the Rubinius channel about this, and they've talked about implementing a thread pool for the purposes of this sort of thing (ala Scala). As far as I know the JVM doesn't support coroutines. Will the new release for revactor be able to run on ruby 1.8? > I'm working on two approaches to getting Revactor working on Ruby 1.8. One is to implement Actors on top of Ruby continuations, and the other is to implement them on top of threads. The latter approach is the one already employed by MenTaLguY's Omnibus Concurrency Library ( http://rubyforge.org/projects/concurrent), so one possibility is to port the Actor::TCP bits onto that, as it's largely API compatible with Revactor already. However, I feel continuations would lead to better performance, although my past attempts at using continuations to implement coroutines have lead to memory leaks. -- Tony Arcieri medioh.com -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/revactor-talk/attachments/20080316/2a61ea16/attachment.html From leon at tim-online.nl Mon Mar 17 02:21:21 2008 From: leon at tim-online.nl (Leon Bogaert) Date: Mon, 17 Mar 2008 07:21:21 +0100 Subject: [Revactor-talk] Having problems with the chat_server example In-Reply-To: References: <0A02838AFAB4AA41A421A9D09800FE6651CCC899BB@server-tim.tim-online.nl> <0A02838AFAB4AA41A421A9D09800FE6651CCC899BC@server-tim.tim-online.nl> <0A02838AFAB4AA41A421A9D09800FE6651CCC899BE@server-tim.tim-online.nl>, Message-ID: <0A02838AFAB4AA41A421A9D09800FE6651CCC899C0@server-tim.tim-online.nl> Wow, sounds all really great! I'll have a go with the example and your idea tonight (first off to work). Maybe I'll try the acts_as* :) part too. That would make the code look a lot simpler I believe. Leon ________________________________________ From: bascule at gmail.com [bascule at gmail.com] On Behalf Of Tony Arcieri [tony at medioh.com] Sent: 16 March 2008 23:35 To: Leon Bogaert Cc: revactor-talk at rubyforge.org Subject: Re: [Revactor-talk] Having problems with the chat_server example On Sun, Mar 16, 2008 at 3:19 PM, Leon Bogaert > wrote: I've added a private messaging option to your example. Just to get the hang of revactor. Is this the way something should be implemented? Or am I doing something weird now? http://pastie.caboo.se/166473 Looks to me like I should really factor the whole example into two classes. That'd help with presenting the ideas in the proper order (i.e. here's the bits that actually talk to the network, and here's the brains of the server itself). What you did is fine, but starts to get a bit hard to follow. I'm considering wrapping up some of the Actor boilerplate with metaprogramming, so that you could declare a class, have it "acts_as_actor" (ugh), and it'd metaprogram spawn and spawn_link methods for that class. Also, is it possible for revactor to run on jruby? I've talked to one of the JRuby guys on the Rubinius channel about this, and they've talked about implementing a thread pool for the purposes of this sort of thing (ala Scala). As far as I know the JVM doesn't support coroutines. Will the new release for revactor be able to run on ruby 1.8? I'm working on two approaches to getting Revactor working on Ruby 1.8. One is to implement Actors on top of Ruby continuations, and the other is to implement them on top of threads. The latter approach is the one already employed by MenTaLguY's Omnibus Concurrency Library (http://rubyforge.org/projects/concurrent), so one possibility is to port the Actor::TCP bits onto that, as it's largely API compatible with Revactor already. However, I feel continuations would lead to better performance, although my past attempts at using continuations to implement coroutines have lead to memory leaks. -- Tony Arcieri medioh.com From tony at medioh.com Mon Mar 17 03:24:57 2008 From: tony at medioh.com (Tony Arcieri) Date: Mon, 17 Mar 2008 01:24:57 -0600 Subject: [Revactor-talk] Having problems with the chat_server example In-Reply-To: <0A02838AFAB4AA41A421A9D09800FE6651CCC899C0@server-tim.tim-online.nl> References: <0A02838AFAB4AA41A421A9D09800FE6651CCC899BB@server-tim.tim-online.nl> <0A02838AFAB4AA41A421A9D09800FE6651CCC899BC@server-tim.tim-online.nl> <0A02838AFAB4AA41A421A9D09800FE6651CCC899BE@server-tim.tim-online.nl> <0A02838AFAB4AA41A421A9D09800FE6651CCC899C0@server-tim.tim-online.nl> Message-ID: On Mon, Mar 17, 2008 at 12:21 AM, Leon Bogaert wrote: > Wow, sounds all really great! > > I'll have a go with the example and your idea tonight (first off to work). > Maybe I'll try the acts_as* :) part too. That would make the code look a > lot simpler I believe. > Check out the newly refactored chat server from trunk: http://revactor.rubyforge.org/svn/trunk/examples/chat_server.rb That should hopefully make it clearer and easier to work with/extend -- Tony Arcieri medioh.com -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/revactor-talk/attachments/20080317/702620ac/attachment.html From leon at tim-online.nl Mon Mar 17 04:23:09 2008 From: leon at tim-online.nl (Leon Bogaert) Date: Mon, 17 Mar 2008 09:23:09 +0100 Subject: [Revactor-talk] Having problems with the chat_server example In-Reply-To: References: <0A02838AFAB4AA41A421A9D09800FE6651CCC899BB@server-tim.tim-online.nl> <0A02838AFAB4AA41A421A9D09800FE6651CCC899BC@server-tim.tim-online.nl> <0A02838AFAB4AA41A421A9D09800FE6651CCC899BE@server-tim.tim-online.nl> <0A02838AFAB4AA41A421A9D09800FE6651CCC899C0@server-tim.tim-online.nl>, Message-ID: <0A02838AFAB4AA41A421A9D09800FE6651CCC899C1@server-tim.tim-online.nl> Ah, yes. The example is more clarifying now. Would be nice to add the handshake method in a before_filter fashion. I'll try and implement a statemachine this evening. Has the 1.8 implementation high priority? Or will it be scheduled on a later date? Leon ________________________________________ From: bascule at gmail.com [bascule at gmail.com] On Behalf Of Tony Arcieri [tony at medioh.com] Sent: 17 March 2008 08:24 To: Leon Bogaert Cc: revactor-talk at rubyforge.org Subject: Re: [Revactor-talk] Having problems with the chat_server example On Mon, Mar 17, 2008 at 12:21 AM, Leon Bogaert wrote: Wow, sounds all really great! I'll have a go with the example and your idea tonight (first off to work). Maybe I'll try the acts_as* :) part too. That would make the code look a lot simpler I believe. Check out the newly refactored chat server from trunk: http://revactor.rubyforge.org/svn/trunk/examples/chat_server.rb That should hopefully make it clearer and easier to work with/extend -- Tony Arcieri medioh.com From tony at medioh.com Mon Mar 17 14:56:31 2008 From: tony at medioh.com (Tony Arcieri) Date: Mon, 17 Mar 2008 12:56:31 -0600 Subject: [Revactor-talk] Having problems with the chat_server example In-Reply-To: <0A02838AFAB4AA41A421A9D09800FE6651CCC899C1@server-tim.tim-online.nl> References: <0A02838AFAB4AA41A421A9D09800FE6651CCC899BB@server-tim.tim-online.nl> <0A02838AFAB4AA41A421A9D09800FE6651CCC899BC@server-tim.tim-online.nl> <0A02838AFAB4AA41A421A9D09800FE6651CCC899BE@server-tim.tim-online.nl> <0A02838AFAB4AA41A421A9D09800FE6651CCC899C0@server-tim.tim-online.nl> <0A02838AFAB4AA41A421A9D09800FE6651CCC899C1@server-tim.tim-online.nl> Message-ID: On Mon, Mar 17, 2008 at 2:23 AM, Leon Bogaert wrote: > Ah, yes. The example is more clarifying now. > Would be nice to add the handshake method in a before_filter fashion. > > I'll try and implement a statemachine this evening. > All right, I'll take a look when you have it ready. > Has the 1.8 implementation high priority? Or will it be scheduled on a > later date? > Ruby 1.8 support is one of many things planned for Revactor 0.2.0, although somewhat lower priority than things like multi-VM support and out-of-band message delivery for making synchronous calls using something similar to Rubinius's Channels. -- Tony Arcieri medioh.com -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/revactor-talk/attachments/20080317/a5d8a61b/attachment-0001.html From leon at tim-online.nl Mon Mar 17 18:16:58 2008 From: leon at tim-online.nl (Leon Bogaert) Date: Mon, 17 Mar 2008 23:16:58 +0100 Subject: [Revactor-talk] Having problems with the chat_server example In-Reply-To: References: <0A02838AFAB4AA41A421A9D09800FE6651CCC899BB@server-tim.tim-online.nl> <0A02838AFAB4AA41A421A9D09800FE6651CCC899BC@server-tim.tim-online.nl> <0A02838AFAB4AA41A421A9D09800FE6651CCC899BE@server-tim.tim-online.nl> <0A02838AFAB4AA41A421A9D09800FE6651CCC899C0@server-tim.tim-online.nl> <0A02838AFAB4AA41A421A9D09800FE6651CCC899C1@server-tim.tim-online.nl>, Message-ID: <0A02838AFAB4AA41A421A9D09800FE6651CCC899CE@server-tim.tim-online.nl> Hi all, I've mocked up something. I've added it as an attachment. Please let me know what you think. Especially if I'm going in the wrong direction :) Toni: what are the bennefits for synchronous calls and multi-VM support? It's not completely clear to me what they exactly mean. Thanks! Leon ________________________________________ From: bascule at gmail.com [bascule at gmail.com] On Behalf Of Tony Arcieri [tony at medioh.com] Sent: 17 March 2008 19:56 To: Leon Bogaert Cc: revactor-talk at rubyforge.org Subject: Re: [Revactor-talk] Having problems with the chat_server example On Mon, Mar 17, 2008 at 2:23 AM, Leon Bogaert wrote: Ah, yes. The example is more clarifying now. Would be nice to add the handshake method in a before_filter fashion. I'll try and implement a statemachine this evening. All right, I'll take a look when you have it ready. Has the 1.8 implementation high priority? Or will it be scheduled on a later date? Ruby 1.8 support is one of many things planned for Revactor 0.2.0, although somewhat lower priority than things like multi-VM support and out-of-band message delivery for making synchronous calls using something similar to Rubinius's Channels. -- Tony Arcieri medioh.com -------------- next part -------------- A non-text attachment was scrubbed... Name: chat_server.tar.gz Type: application/x-gzip Size: 1815 bytes Desc: chat_server.tar.gz Url : http://rubyforge.org/pipermail/revactor-talk/attachments/20080317/e41301bf/attachment.gz From bruce at codefluency.com Sat Mar 29 21:47:08 2008 From: bruce at codefluency.com (Bruce Williams) Date: Sat, 29 Mar 2008 20:47:08 -0500 Subject: [Revactor-talk] Actors Exiting Message-ID: First of all: Tony, as someone with a real appreciation of Erlang, I love that you've put this together. Really compelling concept to see in Ruby. Secondly; I think I'm missing a mental hurdle with regard to when Actors are concurrent and when they aren't. I understand when you spawn an Actor it doesn't tun until the current one enters a `receive' block, but besides that I'm unclear. Some contrived code: http://pastie.caboo.se/private/8as7bnci2dtemzelw2djmq * Why doesn't the prompt loop? * Why isn't "After receive" being output (if the receive block isn't finding a message, shouldn't it sleep) * Is the main process just exiting the program and killing the threads/actors? If so, do they need to be joined? Any help you can give, Tony -- or anyone else on the list can help with -- will be most appreciated! Cheers, Bruce --- http://codefluency.com From tony at medioh.com Sun Mar 30 20:32:59 2008 From: tony at medioh.com (Tony Arcieri) Date: Sun, 30 Mar 2008 18:32:59 -0600 Subject: [Revactor-talk] Actors Exiting In-Reply-To: References: Message-ID: On Sat, Mar 29, 2008 at 7:47 PM, Bruce Williams wrote: > Some contrived code: http://pastie.caboo.se/private/8as7bnci2dtemzelw2djmq > Here's a slightly modified version that seems to work: http://pastie.caboo.se/172967 * Why doesn't the prompt loop? Ruby exits when the "main Actor" (the one running in the root of your program) does. It's similar to how Erlang behaves in escript mode (i.e. your program exits when yourmodule:main/1 exits) Moving the message reading loop out of an Actor itself fixes the problem. > * Why isn't "After receive" being output (if the receive block isn't > finding a message, shouldn't it sleep) In this case, because the "main Actor" exited after all the others had been initialized. > * Is the main process just exiting the program and killing the > threads/actors? If so, do they need to be joined? > There's no need/way to join the other Actors, however the main Actor needs to do something that keeps the program alive. It's a good place to put whatever code is waiting for input to process (e.g. a listener socket, or in this case the gets loop) -- Tony Arcieri medioh.com -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/revactor-talk/attachments/20080330/a6ae21d7/attachment.html From tony at medioh.com Mon Mar 31 12:03:09 2008 From: tony at medioh.com (Tony Arcieri) Date: Mon, 31 Mar 2008 10:03:09 -0600 Subject: [Revactor-talk] Actors Exiting In-Reply-To: References: Message-ID: On Mon, Mar 31, 2008 at 3:29 AM, Bruce Williams wrote: > Thanks Tony; I guess one major point I wasn't grasping before was that I > have access to Actor.receive and Actor.current outside an explicit spawn > block (since each thread has an associated actor implicitly?) > Yep. Originally Revactor had an "Actor-world" which you had to enter before doing Actor things, but MenTaLguY convinced me that was a bad idea. Now wherever you go in your program, you can use Actor functionality. -- Tony Arcieri medioh.com -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/revactor-talk/attachments/20080331/c676a516/attachment.html From cremes.devlist at mac.com Mon Mar 31 17:17:20 2008 From: cremes.devlist at mac.com (Chuck Remes) Date: Mon, 31 Mar 2008 16:17:20 -0500 Subject: [Revactor-talk] Actors Exiting In-Reply-To: References: Message-ID: <96785B30-0686-4500-892C-2935E7702B8D@mac.com> On Mar 31, 2008, at 11:03 AM, Tony Arcieri wrote: > On Mon, Mar 31, 2008 at 3:29 AM, Bruce Williams > wrote: > Thanks Tony; I guess one major point I wasn't grasping before was > that I have access to Actor.receive and Actor.current outside an > explicit spawn block (since each thread has an associated actor > implicitly?) > > Yep. Originally Revactor had an "Actor-world" which you had to > enter before doing Actor things, but MenTaLguY convinced me that was > a bad idea. Now wherever you go in your program, you can use Actor > functionality. > Tony, watching Bruce here has been instructive. Here's a guy who has some experience from the Erlang world where Actors are a pretty well-known quantity and he's having a bit of trouble. Any chance you might create a few more examples for Revactor so it is a bit clearer how to use this library? While I understand the concepts, I am having a bit of trouble applying those concepts to the concrete world. Many thanks... cr -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/revactor-talk/attachments/20080331/7c39bd00/attachment.html From bruce at codefluency.com Mon Mar 31 17:54:36 2008 From: bruce at codefluency.com (Bruce Williams) Date: Mon, 31 Mar 2008 16:54:36 -0500 Subject: [Revactor-talk] Actors Exiting In-Reply-To: <96785B30-0686-4500-892C-2935E7702B8D@mac.com> References: <96785B30-0686-4500-892C-2935E7702B8D@mac.com> Message-ID: <7F131D8C-59D2-4080-87C5-FF4ED35D1600@codefluency.com> Specifically it would be interesting to see more non-IO related examples; while Revactor IO is compelling, it's the actor messaging ala Erlang-style mailboxes (replacing traditional Ruby threads + mutexes/queues) that really drew me in. Who knows; maybe I can help out with some examples down the line. Cheers, Bruce On Mar 31, 2008, at 4:17 PM, Chuck Remes wrote: > > On Mar 31, 2008, at 11:03 AM, Tony Arcieri wrote: >> On Mon, Mar 31, 2008 at 3:29 AM, Bruce Williams > > wrote: >> Thanks Tony; I guess one major point I wasn't grasping before was >> that I have access to Actor.receive and Actor.current outside an >> explicit spawn block (since each thread has an associated actor >> implicitly?) >> >> Yep. Originally Revactor had an "Actor-world" which you had to >> enter before doing Actor things, but MenTaLguY convinced me that >> was a bad idea. Now wherever you go in your program, you can use >> Actor functionality. >> > > Tony, > > watching Bruce here has been instructive. Here's a guy who has some > experience from the Erlang world where Actors are a pretty well- > known quantity and he's having a bit of trouble. > > Any chance you might create a few more examples for Revactor so it > is a bit clearer how to use this library? While I understand the > concepts, I am having a bit of trouble applying those concepts to > the concrete world. > > Many thanks... > > cr > > _______________________________________________ > Revactor-talk mailing list > Revactor-talk at rubyforge.org > http://rubyforge.org/mailman/listinfo/revactor-talk -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/revactor-talk/attachments/20080331/21ee467a/attachment.html From tony at medioh.com Mon Mar 31 18:24:47 2008 From: tony at medioh.com (Tony Arcieri) Date: Mon, 31 Mar 2008 16:24:47 -0600 Subject: [Revactor-talk] Actors Exiting In-Reply-To: <7F131D8C-59D2-4080-87C5-FF4ED35D1600@codefluency.com> References: <96785B30-0686-4500-892C-2935E7702B8D@mac.com> <7F131D8C-59D2-4080-87C5-FF4ED35D1600@codefluency.com> Message-ID: On Mon, Mar 31, 2008 at 3:54 PM, Bruce Williams wrote: > Specifically it would be interesting to see more non-IO related examples; > while Revactor IO is compelling, it's the actor messaging ala Erlang-style > mailboxes (replacing traditional Ruby threads + mutexes/queues) that really > drew me in. > All right, point taken: more examples are needed. What's an example of something non-I/O related that you would you like to see an example of? -- Tony Arcieri medioh.com -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/revactor-talk/attachments/20080331/38b85b5f/attachment-0001.html