[#1263] Draft of the updated Ruby FAQ — Dave Thomas <Dave@...>

33 messages 2000/02/08

[#1376] Re: Scripting versus programming — Andrew Hunt <andy@...>

Conrad writes:

13 messages 2000/02/15

[#1508] Ruby/GTK and the mainloop — Ian Main <imain@...>

17 messages 2000/02/19
[#1544] Re: Ruby/GTK and the mainloop — Yasushi Shoji <yashi@...> 2000/02/23

Hello Ian,

[#1550] Re: Ruby/GTK and the mainloop — Ian Main <imain@...> 2000/02/23

On Wed, Feb 23, 2000 at 02:56:10AM -0500, Yasushi Shoji wrote:

[#1516] Ruby: PLEASE use comp.lang.misc for all Ruby programming/technical questions/discussions!!!! — "Conrad Schneiker" <schneiker@...>

((FYI: This was sent to the Ruby mail list.))

10 messages 2000/02/19

[#1569] Re: Ruby: constructors, new and initialise — Yukihiro Matsumoto <matz@...>

The following message is a courtesy copy of an article

12 messages 2000/02/25

[ruby-talk:01333] Re: Bug in Kernel.open (I think)

From: Dave Thomas <Dave@...>
Date: 2000-02-13 23:25:58 UTC
List: ruby-talk #1333
matz@netlab.co.jp (Yukihiro Matsumoto) writes:

> In message "[ruby-talk:01318] Bug in Kernel.open (I think)"
>     on 00/02/12, Dave Thomas <Dave@thomases.com> writes:
> 
> |You recently changed Kernel.open so it would take a block in the pipe
> |form. Unfortunately, I think now it _has_ to take a block:
> 
>   * unavoidable conditional
> 
>     By new behavior, nil check in the block is must.  It's not as easy
>     as it should be, I think.  For example, `fork' uses block to
>     execute under child process.
> 
>       fork { p "in child" }

I can see a certain symmetry here, although it's harder to
document. The idea that

   open(..) { |f| ... }

runs the block with 'f' set to the return value from open works across 
all the versions of open with the new behavior. If you special case
it, then the explanation gets longer and more confusing. So, the
principle of least surprise would argue for the new behavior.

Alternatively, I can also see the argument that says we should keep
the old behavior.

Maybe we should revert for now, until you invent the indexed yield:

   yield[n] p1,p2...

yields to the 'n'th block.

Now there's a construct with the potential for some fun semantics!

Regards

Dave

In This Thread

Prev Next