[#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
[#2495] Re: 'in' vs. 'into' — Andrew Hunt <andy@...>
># rescue MyException into myVar
4 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:02355] Re: Function of Array.filter surprises me
From:
schneik@...
Date:
2000-04-04 00:38:07 UTC
List:
ruby-talk #2355
Hi,
Quinn Dunkan wrote:
# > mengx@nielsenmedia.com writes:
# > # >
# > # > I have to admit `filter' is not a best name; some proposed
`collect!',
# > # > but I don't feel it's not collecting anything.
# > # >
# > # >
# > # > matz.
# > #
# > # Would convert/convert! or transform/transform! be better that
# > collect/filter?
# > # Of course they could mean something like "to_s", but in iterator
context,
# > # I will not be confused.
# >
# > Well, filter once kind of made a sort of idiosyncratic sense in the
distant
# > past when it was a semi-common UNIX idiom for something like a
# > sed/awk/nroff stage in a pipeline.
#
# 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').
??? "this function" WRT Ruby? Then I think the previous but snipped ref to
Perl's map (versus grep here) was correct.
(I also don't understand the your last sentence above, since
detect returns just the first item meeting some condition.)
From a previous Matz note to a question I had posed about this:
========================================================
Enumerable's collect and select replace Perl's map/grep.
e.g.
[1,2,3,4].collect{|x| x*2} #=> [2,4,6,8]
[1,2,3,4].select{|x| x % 2 == 0} #=> [2,4]
========================================================
IIUC, then:
filter (exists) == collect! (doesn't exist?)
# I think ruby's use of filter is non-intuitive and potentially dangerous
for
# everyone other than smalltalkers. However, even though I too prefer map,
I
# think collect isn't so bad, and it's certainly not going anywhere. I
would
# also highly discourage convert, transform, or other non-standard
# not-invented-here stuff (smalltalk has a sort of excuse of being old :)
(Then smalltalk should know better by now :-)
# *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.
I hope this will eventually *always* be true (for alphabetically
named methods, in Ruby 3000)
Meanwhile, I would like to see *every* mutator method
without an !-form have a standard alias to the corresponding !-form in
the mean time. Then even though old code would still have the old
forms, at least the new code could be written consistently as if the
mutator-always-has-! convention was implemented from the start. (And
either way, there would never be a case where a non-mutator method has
an !, AFAIK.)
map, map!
Conrad Schneiker
(This note is unofficial and subject to improvement without notice.)