Related projects: Arrowlets, Joose

17 views
Skip to first unread message

Matt Brubeck

unread,
Mar 20, 2009, 4:45:07 PM3/20/09
to Oni - embedded structured concurrency
I just came across a couple of projects that use similar approaches to
JavaScript concurrency:

Arrowlets is fundamentally very similar to Oni; it provides a set of
lifters and combinators used to build "programs" that can execute
concurrently and asynchronously. Its JavaScript expressions are
combined through method chaining, rather than function application
like Oni:
http://www.cs.umd.edu/projects/PL/arrowlets/index.xhtml

JooseX.DelayedExecution has a narrower scope than Oni or Arrowlets,
but I thought the OOP approach was interesting. It creates mock
objects that record method calls, then plays them back after an
asynchronous call is finished. This sounds complicated, but it means
that calling code can really look just like normal synchronous
JavaScript:

http://joose-js.blogspot.com/2008/09/jquery-style-results-sets-for-or-mapper.html
http://code.google.com/p/joose-js/source/browse/trunk/lib/JooseX/DelayedExecution.js

Alexander Fritze

unread,
Mar 22, 2009, 12:31:43 PM3/22/09
to oni-...@googlegroups.com
Interesting stuff... I didn't know of either of them.

As you say, Arrowlets is really pretty similar to Oni on a fundamental
level. It doesn't (yet) offer programming abstractions on the level
that Oni does (e.g. no closures), but there are a few interesting
ideas there that I'm taking a closer look at, like e.g. the way the
syntax is mapped into JavaScript.

I'm still searching for a good theoretical foundation that can
adequately model languages like Oni, so I was hoping to get something
out of the fact that Arrowlet's point of reference is the 'arrows'
concept. On closer examination, I don't think arrows fit the bill: An
algebra based on arrows only captures one type of composition (e.g.
'>>>'=Seq), whereas the interesting aspect of Arrowlets/Oni is that
they implement other composition operators (e.g. Alt, Par in Oni, or
fanout, product in Arrowlets) which cannot be implemented in terms of
'arr', '>>>' and 'first'.

Alexander Fritze

unread,
Apr 2, 2009, 10:19:14 AM4/2/09
to oni-...@googlegroups.com
Hey Matt,

I've plagiarized your paragraph on Arrowlets for the 'Related' section
on the oni homepage (http://croczilla.com/oni/#related). I hope you're
ok with that!

Cheers,
Alex

On 20. Mar2009, at 21:45 , Matt Brubeck wrote:

>

Matt Brubeck

unread,
Apr 3, 2009, 9:53:14 AM4/3/09
to Oni - embedded structured concurrency
On Apr 2, 7:19 am, Alexander Fritze <a...@croczilla.com> wrote:
> I've plagiarized your paragraph on Arrowlets for the 'Related' section  
> on the oni homepage (http://croczilla.com/oni/#related). I hope you're  
> ok with that!

No problem!
Reply all
Reply to author
Forward
0 new messages