Yes, this is more of a "let's take a legacy Java code base and see how
we can infuse use of Scala in vital areas".

My initial posting does tend to convey the impression that this is a
ground up re-write - not quite the case. Sorry about that.

I think it would be fair to say that the heart and soul of the Apollo
endeavor revolves around choosing HawtDispatch:

http://hawtdispatch.fusesource.org/

which in turn is inspired and conceptually based on Apple's Grand
Central Dispatch:

http://en.wikipedia.org/wiki/Libdispatch

[pull quote]
"A task in Grand Central Dispatch can be used either to create a work
item that is placed in a queue or assign it to an event source. If a
task is assigned to an event source then a work unit is made from the
block or function when the event triggers, and the work unit is placed
in an appropriate queue. This is described by Apple as more efficient
than creating a thread whose sole purpose is to wait on a single event
triggering."


The nice thing about HawtDispatch is that it provides both a Java and
a Scala API, and there does appear to be nice advantages for going
with its Scala API.

--RogerV


On Apr 2, 11:53 am, Kevin Wright <[email protected]> wrote:
> (cross-posting to the scala mailing list)
>
> and so it begins...
>
> This is intriguing, to say the least; though it still seems to be *very*
> early days yet!  For anyone else who's interested, I was able to locate the
> source here:
>
> http://svn.apache.org/repos/asf/activemq/activemq-apollo/trunk/apollo...
>
> <http://svn.apache.org/repos/asf/activemq/activemq-apollo/trunk/apollo...>So
> far, it looks a great deal like the Java equivalent - I can definitely spot
> a few areas where a programmer with more experience in the language would
> have taken a different approach.  If nothing else, I think this is going to
> present a fantastic example of a design evolving towards more idiomatic
> Scala over time.
>
> I heartily wish them the best possible luck in this endeavour.
>
> On 2 April 2011 19:02, RogerV <[email protected]> wrote:
>
>
>
>
>
>
>
>
>
> > Scala folks will no doubt be interested in this (see links below) -
> > Apache ActiveMQ message broker is undergoing a rewrite. Scala 2.8 is
> > being used and instead of Java-style threading the Scala Actor
> > library, and particularly the React semantics, is being employed.
>
> > This is a pretty serious software that is widely used. What will be
> > excellent is that now there will be a Scala version and a Java version
> > that can be compared against each other. It's open source so anyone
> > that wants to will be able to review the source code. Can't think of a
> > better vehicle for being able to explore in earnest the question of
> > are their positive gains in adopting Scala vs sticking with Java.
>
> > Does the nature of Scala at source code level entail better story for
> > comprehensibility, conciseness, ease of maintainability?
>
> > Is Scala Actor model more effective for dealing with concurrency in
> > software design and implementation?
>
> > Does the Actor model (especially React) enable better performance
> > giving rise to higher scalability, etc.?
>
> > There's plenty more involved, such as extensible plugin aspects of AMQ
> > - or embedded DSL languages such as Camel that is used for routing,
> > bridging, transformations...
>
> > Even the notion of the prior Java JMX rationale is being rethought due
> > to going with Scala.
>
> > The next generation of messaging broker from the Apache ActiveMQ team
> > is being worked on, and they are about to reach a Beta 1 stage.
>
> >http://activemq.apache.org/apollo/versions/1.0-beta1/website/index.html
>
> > Architecture
>
> >http://activemq.apache.org/apollo/versions/1.0-beta1/website/document...
>
> > --
> > You received this message because you are subscribed to the Google Groups
> > "The Java Posse" group.
> > To post to this group, send email to [email protected].
> > To unsubscribe from this group, send email to
> > [email protected].
> > For more options, visit this group at
> >http://groups.google.com/group/javaposse?hl=en.
>
> --
> Kevin Wright
>
> gtalk / msn : [email protected]
> <[email protected]>mail: [email protected]
> vibe / skype: kev.lee.wright
> quora:http://www.quora.com/Kevin-Wright
> twitter: @thecoda
>
> "My point today is that, if we wish to count lines of code, we should not
> regard them as "lines produced" but as "lines spent": the current
> conventional wisdom is so foolish as to book that count on the wrong side of
> the ledger" ~ Dijkstra

-- 
You received this message because you are subscribed to the Google Groups "The 
Java Posse" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/javaposse?hl=en.

Reply via email to