tcc8 (4) [Avatar] Offline
#1
will there be a chapter on how to effectively use actors in creating distributed systems?
maybe a toy scatter/gather search system as an example?
joshua.suereth (60) [Avatar] Offline
#2
Re: actors chapter?
There will be a chapter on Actors. Originally I was going to embed this chapter into the "standard library" chapter where I'll discuss the Scala collections library in detail, however the content became to great to have just one chapter.

Scatter-Gather is an excellent example, thanks for the suggestion.

A note about the chapter: I'm going to cover the Scala actors library included in the standard library with mentions of other actors libraries. Many of the concept carry across the libraries, but some of the specific do not. If I were to take a poll here, which actors library are you most interested in?

1. Akka
2. Scala standard library Actors
3. Liftweb's actors
4. Goatrodeo

Note: That Lift is covered very well in Tim's "Lift In Action" book. Also, the main distinguishing feature, IMHO between Akka and Scala's standard library is that Akka is designed to be more "Enterprise ready" with many default supervision strategies, faster dispatching and a better distributed story than Scala's standard library.
Pengin (2) [Avatar] Offline
#3
Re: actors chapter?
Not sure if I'm too late to chime in on this, but I would value an Akka-centric chapter above all others.

I was surprised to learn (from the tutor on a Scala course) that Akka has some serious benefits over standard Scala actors, which I'd not really found discussed elsewhere - memory per actor, distributed actors, fault tolerance...

Have now decided to concentrate on Akka rather than GridGain.
swingtime (12) [Avatar] Offline
#4
Re: actors chapter?
I would also prefer Akka.
alanpog (1) [Avatar] Offline
#5
Re: actors chapter?
Akka, please!
joshua.suereth (60) [Avatar] Offline
#6
Re: actors chapter?
Your wish is granted. The Chapter will be about general Actor design with specific examples in Akka.

I initially wrote the chapter for Scala's standard library, so I'll include that code in the source for the Chapter, but won't reference. The concepts are the key point to this chapter, and they cross over between actor implementations. The upside to Akka is the API is really geared towards writing well-designed actors code, so it should be much simpler.

I'm not positive I'll include any bits about how to set up Akka, as that isn't the focus. Thanks everyone for weighing in!
TheDet (49) [Avatar] Offline
#7
Re: actors chapter?
Coming late, but ...

Covering Akka in this book (at any achievable depth) will be of much advantage as the reader of an "in depth" book will presumably have a serious enterprise background, where Akka is targeting.

Beside that, the standard library's actors will indeed be covered in a seperate book:
"Actors in Scala", so "in Depth" should be not concurrent but complement.
joshua.suereth (60) [Avatar] Offline
#8
Re: actors chapter?
Just to re-iterate, hopefully more clearly this time:

The book covers general concepts of Actors that should apply to any actors library you choose, be it Scala's core actors, Scalaz's actors or Akka's actors.

All of the examples will be done in Akka. The level of detail here will be as much as is needed to teach the underlying actor's concepts, not necessarily the specifics of Akka (although those should show up in callouts).

Again, I appreciate all the feedback. If anyone sees anything else lacking in the book, please let me know!
joshua.suereth (60) [Avatar] Offline
#9
Re: actors chapter?
Hey Everyone!

Due to my lack of planning and organization, the early rendition of the Actors chapter is going to be MEAP'ed. I'm sitting on a version which has been re-written against Akka and includes some more fundamental discussion on what actors are.

I hope you enjoy that version, as a lot of the meat of the content is the same in the Akka edition. Expect the updated chapter to release in the MEAP after this.
kaos (12) [Avatar] Offline
#10
Re: actors chapter?
Actors are also covered in Scala in Action by Nilanjan Raychaudhuri (http://www.manning.com/raychaudhuri/) and in Lift in Action by Tim Perrett (http://www.manning.com/perrett/). There's a good chance there will be more about them in future books as well.

Katharine Osborne
Developmental Editor