
I am making a formal proposal to have the async package included in the Haskell Platform: http://trac.haskell.org/haskell-platform/wiki/Proposals/async See the wiki paage for details, and a list of open issues for discussion. I just uploaded the async package itself to Hackage: http://hackage.haskell.org/package/async-2.0.0.0 documentation isn't there yet, so I've uploaded it here: http://community.haskell.org/~simonmar/async/ I have set the deadline to 13 August 2012 (2 months' time), with comments due by 13 July 2012 (one month). There's plenty of time before the next platform release anyway (scheduled for 12 November 2012). Cheers, Simon

On 13 June 2012 22:56, Simon Marlow
I am making a formal proposal to have the async package included in the Haskell Platform:
http://trac.haskell.org/haskell-platform/wiki/Proposals/async
See the wiki paage for details, and a list of open issues for discussion.
Is it possible to add something there about _why_ this package should be in the Platform rather than being a recommended package for people to cabal-install if they need something like it?
I just uploaded the async package itself to Hackage:
http://hackage.haskell.org/package/async-2.0.0.0
documentation isn't there yet, so I've uploaded it here:
http://community.haskell.org/~simonmar/async/
I have set the deadline to 13 August 2012 (2 months' time), with comments due by 13 July 2012 (one month). There's plenty of time before the next platform release anyway (scheduled for 12 November 2012).
Cheers, Simon
_______________________________________________ Libraries mailing list Libraries@haskell.org http://www.haskell.org/mailman/listinfo/libraries
-- Ivan Lazar Miljenovic Ivan.Miljenovic@gmail.com http://IvanMiljenovic.wordpress.com

Hi Simon, Thanks for taking the time to write the proposal (and the library!) One question in my mind is whether we should give packages some time to bake on Hackage before including them in the platform. I'm not sure if that's necessary or not, I guess it depends on our confidence in that the API won't have to change much at this point. Onwards to the package itself. At a first read, the API looks sensible. I have but one question at this point: Does the STM operations in the API force Async to be implemented in terms of STM i.e. do we lock ourself to a particular implementation by providing them? -- Johan

On Wed, Jun 13, 2012 at 5:56 AM, Simon Marlow
I am making a formal proposal to have the async package included in the Haskell Platform:
I think the library looks very nice, and definitely useful. My only concern is that it hasn't seen any use yet, so this is an unusual way to be doing things. If you were submitting this proposal 6 months from now, it would be a no-brainer. That being said, I infer that the motivation behind getting it in this year is to be able to point people at it and say "just use this, it's in the default distribution". Which I think is quite sensible. I'm in favour of this going in. I like the API, the documentation is good, and the code is clean.

I agree with Bryan, +1 for fast-tracking this into the platform.
(Which is to say, we heavily review and test the proposal over the next few months rather than waiting for it to become established before incorporating it into the platform.)
Chris
From: haskell-platform-bounces@projects.haskell.org [mailto:haskell-platform-bounces@projects.haskell.org] On Behalf Of Bryan O'Sullivan
Sent: 13 June 2012 20:12
To: Haskell Libraries
Cc: Haskell Platform
Subject: Re: Haskell platform proposal: the async package
On Wed, Jun 13, 2012 at 5:56 AM, Simon Marlow

On 06/13/2012 02:56 PM, Simon Marlow wrote:
I am making a formal proposal to have the async package included in the Haskell Platform:
http://trac.haskell.org/haskell-platform/wiki/Proposals/async
See the wiki paage for details, and a list of open issues for discussion.
I just uploaded the async package itself to Hackage:
http://hackage.haskell.org/package/async-2.0.0.0
documentation isn't there yet, so I've uploaded it here:
http://community.haskell.org/~simonmar/async/
I have set the deadline to 13 August 2012 (2 months' time), with comments due by 13 July 2012 (one month). There's plenty of time before the next platform release anyway (scheduled for 12 November 2012).
-0. AFAIUI the HP is for battle-tested code and libraries where you can just say "here, use this!" IMO async doesn't pass this test since it hasn't seen any real use yet. FWIW, the API does look very nice... but maybe we should give it a few months of real use to flesh out real-world problems and bugs in general? Regards,

On 14 June 2012 03:39, Bardur Arantsson
On 06/13/2012 02:56 PM, Simon Marlow wrote:
I am making a formal proposal to have the async package included in the Haskell Platform:
http://trac.haskell.org/haskell-platform/wiki/Proposals/async
See the wiki paage for details, and a list of open issues for discussion.
I just uploaded the async package itself to Hackage:
http://hackage.haskell.org/package/async-2.0.0.0
documentation isn't there yet, so I've uploaded it here:
http://community.haskell.org/~simonmar/async/
I have set the deadline to 13 August 2012 (2 months' time), with comments due by 13 July 2012 (one month). There's plenty of time before the next platform release anyway (scheduled for 12 November 2012).
-0.
AFAIUI the HP is for battle-tested code and libraries where you can just say "here, use this!" IMO async doesn't pass this test since it hasn't seen any real use yet.
sounds like a challenge for us all to battle-test it over the next month :) Conrad.

On 13/06/2012 20:39, Bardur Arantsson wrote:
On 06/13/2012 02:56 PM, Simon Marlow wrote:
I am making a formal proposal to have the async package included in the Haskell Platform:
http://trac.haskell.org/haskell-platform/wiki/Proposals/async
See the wiki paage for details, and a list of open issues for discussion.
I just uploaded the async package itself to Hackage:
http://hackage.haskell.org/package/async-2.0.0.0
documentation isn't there yet, so I've uploaded it here:
http://community.haskell.org/~simonmar/async/
I have set the deadline to 13 August 2012 (2 months' time), with comments due by 13 July 2012 (one month). There's plenty of time before the next platform release anyway (scheduled for 12 November 2012).
-0.
AFAIUI the HP is for battle-tested code and libraries where you can just say "here, use this!" IMO async doesn't pass this test since it hasn't seen any real use yet.
FWIW, the API does look very nice... but maybe we should give it a few months of real use to flesh out real-world problems and bugs in general?
That's a fair criticism, I thought someone would bring it up. So my thinking here is that - similar APIs already exist on Hackage, so it's not completely new (and that also demonstrates demand) - the code is mostly very simple, it's hard to go wrong. But if people feel we should wait a while, that's fine by me. Cheers, Simon

On Thu, Jun 14, 2012 at 6:45 AM, Simon Marlow
So my thinking here is that
- similar APIs already exist on Hackage, so it's not completely new (and that also demonstrates demand)
- the code is mostly very simple, it's hard to go wrong.
But if people feel we should wait a while, that's fine by me.
I think the fact that we're seeing so many proposals is suggestive; it's easier to deal with those before it lands in the Platform, if nothing else. -- brandon s allbery allbery.b@gmail.com wandering unix systems administrator (available) (412) 475-9364 vm/sms

Hi Simon, Nice package! For completeness sake, shouldn't the package also offer these functions: * asyncOS * asyncOn * asyncWithUnmask * asyncOnWithUnmask analogous to the same functions in Control.Concurrent. I don't know if they will be used a lot but I also added them to the threads package: http://hackage.haskell.org/packages/archive/threads/0.5/doc/html/Control-Con... Bas

On 14 June 2012 15:57, Bas van Dijk
Hi Simon,
Nice package!
For completeness sake, shouldn't the package also offer these functions:
* asyncOS * asyncOn * asyncWithUnmask * asyncOnWithUnmask
analogous to the same functions in Control.Concurrent.
I don't know if they will be used a lot but I also added them to the threads package:
http://hackage.haskell.org/packages/archive/threads/0.5/doc/html/Control-Con...
Bas
Simon, I've send you a pull request to add these: https://github.com/simonmar/async/pull/2 Cheers, Bas
participants (9)
-
Bardur Arantsson
-
Bas van Dijk
-
Brandon Allbery
-
Bryan O'Sullivan
-
Chris Dornan
-
Conrad Parker
-
Ivan Lazar Miljenovic
-
Johan Tibell
-
Simon Marlow