From cf0248bb9a15130950a8825dde029d07e7c5ef3b Mon Sep 17 00:00:00 2001 From: Dominik Picheta Date: Wed, 12 Feb 2014 15:54:35 -0800 Subject: [PATCH] Updated GSoC 2014 Ideas (markdown) --- GSoC-2014-Ideas.md | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/GSoC-2014-Ideas.md b/GSoC-2014-Ideas.md index f741c46..fb96739 100644 --- a/GSoC-2014-Ideas.md +++ b/GSoC-2014-Ideas.md @@ -9,9 +9,8 @@ Below is a list of project ideas for [GSoC](https://www.google-melange.com/gsoc/ #### Add support for full coroutines **Description:** - * Many programming languages, in particular Lua, offer coroutines as way to provide light-weight collaborative tasking. Nimrod supports "closure iterators" which are comparable to Python's generators to accomplish the same. - * However closure iterators are much more limited as they cannot capture the call stack completely. - * The best example to see the limitations of Nimrod's current way is that iterators cannot be recursive. + +Many programming languages, in particular Lua, offer coroutines as a way to provide light-weight collaborative tasking. Nimrod supports "closure iterators" which are comparable to Python's generators to accomplish the same. However closure iterators are much more limited as they cannot capture the call stack completely. The best example to see the limitations of Nimrod's current way is that iterators cannot be recursive. Here is a sketch of a possible implementation, but there are lots of other possibilities to implement full coroutines for Nimrod: