[MacRuby-devel] Fibers and Enumerators

Laurent Sansonetti lsansonetti at apple.com
Wed Aug 11 15:52:56 PDT 2010


On Aug 11, 2010, at 3:23 PM, easco wrote:
>> Because of the way MacRuby is implemented, fibers would need to unwind the stack most of the time you switch continuations, which has poor runtime performance. We will eventually implement continuations which can serve to implement fibers at some point (which is what MRI does I believe), but I wouldn't recommend to use them for anything significant because of the performance impact.
> 
> 
> My concern for the feature is focused not so much on the performance impact of using it, as it focuses on the fact that Fibers have been added to the 1.9.x language. They appear to be an important part of the External Enumerators feature and that feature seems to have a lot of people very excited.
> 
> Any external libraries that make use of Fibers or External Enumerators stand a good chance of not working in MacRuby. In that case MacRuby becomes "Mac-MostOfRuby" which makes it harder to adopt... etc.  I'd rather that didn't happen.

I totally agree. We will definitely add Fibers to MacRuby, at some point. We currently work hard on making sure MacRuby is compatible with Ruby 1.9. There is AFAIK no feature of Ruby that MacRuby refused to implement :-)

Help is appreciated, too.

Laurent


More information about the MacRuby-devel mailing list