[#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:02356] Re: Function of Array.filter surprises me
From:
matz@... (Yukihiro Matsumoto)
Date:
2000-04-04 01:24:26 UTC
List:
ruby-talk #2356
Hi,
In message "[ruby-talk:02354] Re: Function of Array.filter surprises me"
on 00/04/03, Quinn Dunkan <quinn@euro.ugcs.caltech.edu> writes:
|filter also makes sense to anyone who's used any language other than smalltalk
|that has this function (except perl, of course, which uses 'grep' apparently
|in an attempt to confuse shell programmers). Uh, the non-destructive version,
|I mean (that ruby calles `detect').
I think you mean `select' or `find_all'.
|It's not a huge leap for a programmer to imagine:
|
|a.collect -> `a' with function applied
|a.collect! -> `a' with function applied, and modifies `a' to the same value
|
|(or map/map!, which is, after all, The Standard)
Hmm.
|then we could also have:
|
|a.filter -> elts of `a' that are true for function
|a.filter! -> elts of `a' that are true for function, and modifies `a' to
| the same value
I'm not going to change `filter' behavior, so there would not be
`filter!'. But I may declare it deprecated in the future if I find
better name.
|Notice a certain consistency? *Most* of the standard methods have nice
|behavior here: given a method `foo' I don't have to look in the docs to know
|what `foo!' will do. That's a big win, I think.
Agreed. The reason for collect/filter is that I felt
collect values in place
is weird, comparing e.g.
sort elements in place
substitute string in place
But if you guys feel OK for collect!/map!, I sould seriously consider
renaming `filter'.
|Hmm, that won't work... how do you use a recursive iterator? Probably you
|don't... I'm not thinking properly in ruby today :)
Pass block using █ e.g.
| def foldr(&block)
| if self.length == 0 then
| raise ValueError, "can't fold empty list with no initial value"
| elsif self.length == 2
| yield self[0], self[1]
| else
| yield self[0], self[1..-1].foldr(&block)
| end
| end
matz.