[#5218] Ruby Book Eng tl, ch1 question — Jon Babcock <jon@...>

13 messages 2000/10/02

[#5404] Object.foo, setters and so on — "Hal E. Fulton" <hal9000@...>

OK, here is what I think I know.

14 messages 2000/10/11

[#5425] Ruby Book Eng. tl, 9.8.11 -- seishitsu ? — Jon Babcock <jon@...>

18 messages 2000/10/11
[#5427] RE: Ruby Book Eng. tl, 9.8.11 -- seishitsu ? — OZAWA -Crouton- Sakuro <crouton@...> 2000/10/11

At Thu, 12 Oct 2000 03:49:46 +0900,

[#5429] Re: Ruby Book Eng. tl, 9.8.11 -- seishitsu ? — Jon Babcock <jon@...> 2000/10/11

Thanks for the input.

[#5432] Re: Ruby Book Eng. tl, 9.8.11 -- seishitsu ? — Yasushi Shoji <yashi@...> 2000/10/11

At Thu, 12 Oct 2000 04:53:41 +0900,

[#5516] Re: Some newbye question — ts <decoux@...>

>>>>> "D" == Davide Marchignoli <marchign@di.unipi.it> writes:

80 messages 2000/10/13
[#5531] Re: Some newbye question — matz@... (Yukihiro Matsumoto) 2000/10/14

Hi,

[#5544] Re: Some newbye question — Davide Marchignoli <marchign@...> 2000/10/15

On Sat, 14 Oct 2000, Yukihiro Matsumoto wrote:

[#5576] Re: local variables (nested, in-block, parameters, etc.) — Dave Thomas <Dave@...> 2000/10/16

matz@zetabits.com (Yukihiro Matsumoto) writes:

[#5617] Re: local variables (nested, in-block, parameters, etc.) — "Brian F. Feldman" <green@...> 2000/10/16

Dave Thomas <Dave@thomases.com> wrote:

[#5705] Dynamic languages, SWOT ? — Hugh Sasse Staff Elec Eng <hgs@...>

There has been discussion on this list/group from time to time about

16 messages 2000/10/20
[#5712] Re: Dynamic languages, SWOT ? — Charles Hixson <charleshixsn@...> 2000/10/20

Hugh Sasse Staff Elec Eng wrote:

[#5882] [RFC] Towards a new synchronisation primitive — hipster <hipster@...4all.nl>

Hello fellow rubyists,

21 messages 2000/10/26

[ruby-talk:5292] RFC: Enumerable#every(n)

From: "Akinori MUSHA" <knu@...>
Date: 2000-10-04 21:16:52 UTC
List: ruby-talk #5292
Hi,

Let me show you a new method candidate for Enumerable module, which I
named "every".  (I might not have implemented it this cleanly without
yashi and znz's help.  Thanks much!)

		*		*		*

Enumerable#every(n)

    Returns an Enumerable object that yields the iterator block for
    every <n> elements.  The block is yielded with <n> arguments for
    each, and if the number of elements are short by <n> for the last
    yield, nil's are filled as necessary.

Example 1:
    Enumerate the alphabets for every quartet and select ones that
    don't start with vowels:

$ ruby -e 'p (("A".."Z").every(4).find_all{|i| "AEIOU".index(i[0]) == nil})'
[["M", "N", "O", "P"], ["Q", "R", "S", "T"], ["Y", "Z", nil, nil]]

Example 2:
    List the files in the current directory in 3-column format:

$ ruby -e 'Dir.open(".").every(3).each{|i| puts "%-20s%-20s%-20s" % i}'
.                   ..                  CVS                 
cygwin              djgpp               ext                 
lib                 misc                missing             
sample              win32               x68                 
README.EXT.jp       .cvsignore          COPYING             
ChangeLog           MANIFEST            Makefile            
Makefile.in         README              README.EXT          
(snip)
string.o            struct.o            time.o              
util.o              variable.o          version.o           
dmyext.o            libruby.a           main.o              
miniruby            rbconfig.rb         libruby.so.16       
libruby.so          ruby                                    


The implementation is available at the following URI:

	http://people.FreeBSD.org/~knu/misc/rb_enum_every.diff


Now I'd ask you some questions:

1) Is the name "every" appropriate?

2) Is it worth being integrated to the standard Enumerable class?


Any comments are welcome.  Thanks in advance.

-- 
                           /
                          /__  __       
                         / )  )  ) )  /
Akinori -Aki- MUSHA aka / (_ /  ( (__(  @ idaemons.org / FreeBSD.org

"We're only at home when we're on the run, on the wing, on the fly"



In This Thread

Prev Next