[#11890] Ruby and Solaris door library — "Hiro Asari" <asari.ruby@...>

Hi, there. This is my first patch against ruby. I think I followed

19 messages 2007/08/13
[#11892] Re: Ruby and Solaris door library — Daniel Berger <djberg96@...> 2007/08/14

Hiro Asari wrote:

[#11899] pack/unpack 64bit Integers — Hadmut Danisch <hadmut@...>

Hi,

13 messages 2007/08/14
[#11903] Re: pack/unpack 64bit Integers — Brian Candler <B.Candler@...> 2007/08/15

On Wed, Aug 15, 2007 at 06:50:01AM +0900, Hadmut Danisch wrote:

[#11948] Fibers in Ruby 1.9? — David Flanagan <david@...>

I just noticed that my ruby1.9 build of August 17th includes a Fiber

22 messages 2007/08/22
[#11949] Re: Fibers in Ruby 1.9? — Daniel Berger <djberg96@...> 2007/08/22

David Flanagan wrote:

[#11950] Re: Fibers in Ruby 1.9? — "Francis Cianfrocca" <garbagecat10@...> 2007/08/22

On 8/22/07, Daniel Berger <djberg96@gmail.com> wrote:

[#11952] Re: Fibers in Ruby 1.9? — MenTaLguY <mental@...> 2007/08/22

On Wed, 22 Aug 2007 20:50:12 +0900, "Francis Cianfrocca" <garbagecat10@gmail.com> wrote:

[#11988] String#length not working properly in Ruby 1.9 — "Vincent Isambart" <vincent.isambart@...>

I saw that Matz just merged his M17N implementation in the trunk.

17 messages 2007/08/25
[#11991] Re: String#length not working properly in Ruby 1.9 — "Michael Neumann" <mneumann@...> 2007/08/25

On Sat, 25 Aug 2007 10:54:20 +0200, Yukihiro Matsumoto

[#11992] Re: String#length not working properly in Ruby 1.9 — Yukihiro Matsumoto <matz@...> 2007/08/25

Hi,

[#12042] Encodings of string literals; explicit codepoint escapes? — David Flanagan <david@...>

This message contains queries that probably only Matz can answer:

16 messages 2007/08/31
[#12043] Re: Encodings of string literals; explicit codepoint escapes? — Yukihiro Matsumoto <matz@...> 2007/08/31

Hi,

Re: Fibers in Ruby 1.9?

From: David Flanagan <david@...>
Date: 2007-08-22 19:15:10 UTC
List: ruby-core #11962
Francis,

As I understand it, external iterators are implemented on top of fibers. 
  And external iterators are working for me in Linux.  So the fibers 
must be working.  (I've posted external iterator examples at
http://www.davidflanagan.com/blog/2007_08.html#000138 but I haven't 
figured out the Fiber API yet, so I haven't tested Fibers directly yet.)

According to Wikipedia's entry on Fibers, they can be implemented in 
Posix with getcontext,setcontext,swapcontext from ucontext.h.  I don't 
know anything about it.  I haven't done that kind of low-level hacking 
since the days of setjmp/longjmp.

I doesn't look to me, however, as if Ruby's implementation does that. 
Fibers are in cont.c, along with continuations.  I haven't figured that 
code out yet, but I'm guessing that they're implemented on top of (or 
with the same techniques as) Continuations.

	David

Francis Cianfrocca wrote:
> On 8/22/07, *MenTaLguY* <mental@rydia.net <mailto:mental@rydia.net>> wrote:
> 
>     On Wed, 22 Aug 2007 20:50:12 +0900, "Francis Cianfrocca"
>     <garbagecat10@gmail.com <mailto:garbagecat10@gmail.com>> wrote:
>      > From day 1, MS recommended that Fibers not be used in any new code.
> 
>     In modern concurrency settings they are becoming increasingly
>     useful, however.
> 
>     Without them, or something like them (e.g. Rubinius Tasks), you must
>     play
>     some very ugly games to get lightweight concurrency -- see the use of
>     explicit continuation-passing (functions, not Continuations) in Scala's
>     actors library for an example of the best that can be hoped for in their
>     absence.
> 
>     Granted, Fibers will make things harder for JRuby.
> 
>     -mental
> 
> 
> 
> Wouldn't Fibers make things harder for everything but Windows? Linux has 
> no equivalent construct whatsoever. (Of course in the later Linux 
> kernels, the Linux threads, which actually are LWPs, don't have nearly 
> as much scheduling overhead as they used to.)
> 
> 


In This Thread