[#2332] Ruby-Python fusion? — mrilu <mrilu@...>
Usually I give some time for news to settle before I pass the word, but
7 messages
2000/04/01
[#2353] Re: Function of Array.filter surprises me — schneik@...
5 messages
2000/04/03
[#2361] crontab — Hugh Sasse Staff Elec Eng <hgs@...>
I want to have a program that may be run between certain times.
11 messages
2000/04/05
[#2375] Marshal: Want string out, but want depth specified? — Hugh Sasse Staff Elec Eng <hgs@...>
@encoded = [Marshal.dump(@decoded, , depth)].pack("m")
7 messages
2000/04/07
[#2378] Re: Marshal: Want string out, but want depth specified?
— matz@... (Yukihiro Matsumoto)
2000/04/07
Hi,
[#2376] Iterator into array — Dave Thomas <Dave@...>
15 messages
2000/04/07
[#2397] Could missing 'end' be reported better? — mrilu <mrilu@...>
I'm not sure one could easily parse, or moreover report, this error better.
5 messages
2000/04/08
[#2404] Re: Iterator into array — Andrew Hunt <andy@...>
>It's still possible to introduce a new syntax for collecting yielded
6 messages
2000/04/08
[#2412] Re: Could missing 'end' be reported better? — h.fulton@...
7 messages
2000/04/09
[#2414] Re: Could missing 'end' be reported better?
— matz@... (Yukihiro Matsumoto)
2000/04/09
Hi,
[#2429] Please join me, I'm Hashing documentation — mrilu <mrilu@...>
This is a story about my hashing ventures, try to bear with me.
5 messages
2000/04/10
[#2459] Precedence question — Dave Thomas <Dave@...>
7 messages
2000/04/12
[#2474] Ruby 1.4.4 — Yukihiro Matsumoto <matz@...>
Ruby 1.4.4 is out, check out:
5 messages
2000/04/14
[#2494] ANNOUNCE : PL/Ruby — ts <decoux@...>
7 messages
2000/04/17
[#2514] frozen behavior — Andrew Hunt <Andy@...>
7 messages
2000/04/19
[#2530] Re: 'in' vs. 'into' — Andrew Hunt <andy@...>
>Hmm, I've not decided yet. Here's the list of options:
6 messages
2000/04/20
[#2535] Default naming for iterator parameters — mrilu <mrilu@...>
I'm back at my computer after some traveling. I know I think Ruby
5 messages
2000/04/20
[#2598] different thread semantics 1.4.3 -> 1.4.4 — hipster <hipster@...4all.nl>
Hi fellow rubies,
4 messages
2000/04/28
[ruby-talk:02381] Re: Iterator into array
From:
Dave Thomas <Dave@...>
Date:
2000-04-07 18:47:08 UTC
List:
ruby-talk #2381
kjana@os.xaxon.ne.jp (YANAGAWA Kazuhisa) writes:
> In message <m2n1n5lwjf.fsf@zip.local.thomases.com>
> Dave@thomases.com writes:
>
> > Given an iterator method, how can I get the results expressed as an
> > array? I could do:
> >
> > result = []
> > iteratorMethod { |i| result << i }
>
> If your iterator is defined on a collection includes Enumerable
> (eg. Array), you can use --- what is one subject these days ---
> Enumerable#collect. Or you prefer a method like Array#filter for its
> effectiveness.
>
> # Or do I miss the point?
Say I have a method which generates Fibonacci numbers to to a limit:
def fibUpTo(max)
i1, i2 = 1, 1
while i1 <= max
yield i1
i1, i2 = i2, i1+i2
end
end
I can do something like
result = []
fibUpTo(20) { |f| result << f }
to collect the results into an array. However, to use Enumerable,
wouldn't I have to wrap it all in a class?
class FibGen
include Enumerable
def initialize(max)
@max = max
end
def each
i1, i2 = 1, 1
while i1 <= @max
yield i1
i1, i2 = i2, i1+i2
end
end
end
result = FibGen.new(20).collect
This just seems like a lot of work (he said, lazily). It would be nice
to be able to use the iterator method directly to achieve the same
thing.
Dave