[plt-dev] Parallel Futures Release
On 12/07/2009 10:31 AM, James Swaine wrote:
> I'm pleased to announce the initial release of parallel futures, a
> construct for fine-grained parallelism in PLT. Roughly speaking, a
> programmer passes a thunk to 'future' and it gets run in parallel.
> That "roughly" holds a few gotchas, partly because we're just getting
> started and partly due to the technique we're using. See the
> documentation for more details:
>
> http://pre.plt-scheme.org/docs/html/futures/
>
>
Cool, great job. A few things:
1. Can you give more guidelines as to which functions will cause the
future to block? Will `cons' block? If not, will allocating memory that
triggers a GC block the future until its `touch'ed?
2. I don't see how the (sleep) call at the end of section 2 changes the
output. I assume the runtime number that the future is waiting at was
supposed to change but I have no reference to compare with.
3. It sounds slightly unfortunate that once a future blocks it won't
continue in parallel on its own after the blocking call has completed.
Is this virtually impossible to implement?